0

我正在使用以下代码尝试让Ctrl+S按下工具条按钮:

 Private Sub take_register_KeyDown(ByVal sender As Object, _
          ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

    If e.KeyCode = Keys.S And Keys.Control Then
        ToolStripButton20.PerformClick()

    End If

End Sub

我是这方面的新手,所以我不懂数百万行编码,所以请你尽量简单:-)。

4

1 回答 1

1

这里完全是猜测,因为没有实际问题。首先,为了获得类似的工作,您需要KeyPreview = True为表单设置。接下来,您可能想要使用KeyDown事件而不是KeyPress

Private Sub Form1_KeyDown(...)
    ' when possible use AndAlso for speed and to avoid some errors in
    ' some situations.  if e.Control is False, the second part wont be evaluated.
    If e.Control AndAlso e.KeyCode = Keys.S Then

        ToolStripButton20.PerformClick()
    End If
End Sub

重复一遍:您可以简单地为设计器中的菜单对象分配一个快捷键组合,让 .NET 完成所有工作。...而且我不知道“多重”在哪里发挥作用,除非Ctrl+S以某种方式算作多重。

于 2013-10-14T18:57:22.370 回答