【问题标题】:vb.net - change behaviour of tab keydown (If e.KeyCode = Keys.Tab Then...) inside richtextboxvb.net - 更改 tab keydown 的行为(如果 e.KeyCode = Keys.Tab Then...)在 Richtextbox 内
【发布时间】:2020-03-01 19:01:34
【问题描述】:

在富文本框中按 TAB 时,我希望整行居中。

我有两个问题:

  1. 我似乎无法抑制标签通常的作用。 我试过了

        Private Sub rtbScript_KeyDown(sender As Object, e As KeyEventArgs) Handles rtbScript.KeyDown
        If e.KeyCode = Keys.Tab Then
        e.SuppressKeyPress = True
        MsgBox("tab key pressed")
        End If
        End Sub
    

结果仍然是富文本框中的表格

  1. 如何将 Richtextbox 中按 Tab 键的确切行居中 我还没有这方面的代码

任何和所有的想法将不胜感激! 谢谢!

【问题讨论】:

  • Tab 键用于导航,将焦点从一个控件移动到另一个控件,因此您的 KeyDown 事件永远不会触发。为 PreviewKeyDown 添加一个事件处理程序,编写 If e.KeyCode = Keys.Tab Then e.IsInputKey = True ,现在 KeyDown 会根据需要触发。考虑一下您的程序的用户将如何发现该选项卡做了一些有用的事情,因为它是多么不寻常。 Ctrl+E 是一个常见的选择,可以通过菜单项上的注释来发现。
  • 感谢您的快速回复。这似乎没有奏效。制表仍然出现。我可以尝试其他任何想法吗?谢谢!
  • 如果它不起作用,那么你可能做错了。如果您更新您的问题并向我们展示您所做的事情,那么我们可能能够确定问题所在。
  • @ jmcilhinney :我已经删除了代码,但我让它与 rtbScript.SelectionTabs = New Integer() {(rtbScript.Width / 2)} 一起工作 - 所以我很满意.感谢大家的关注!

标签: vb.net formatting richtextbox


【解决方案1】:

找到了!

rtbScript.SelectionTabs = New Integer() {(rtbScript.Width / 2)}

这似乎可以解决问题!感谢大家的宝贵时间!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-07
    相关资源
    最近更新 更多