我需要使用三个不同的键,例如 ( Ctrl++ Shift)F12在 vb.net 中打开另一个表单。
请帮我。
在 keydown 事件中,您可以访问这些键。例如,在这个处理程序中......
Private Sub keyDown(ByVal Sender As Object, ByVal e As KeyEventArgs) handles me.keydown
...您可以使用布尔值 e.Alt、e.Control 和 e.Shift 来判断这些控制键是否按下。然后你可以做这样的事情:
Select case CInt(e.keycode)
case Keys.F12
if e.Control andalso e.Shift then frm.ShowDialog
...
定义这个函数:
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As IntPtr) As Short
因此,您可以检查同时按下了哪些键:
'For example, keys "arrow up" and letter "W"
If GetKeyState(87) < 0 AndAlso GetKeyState(38) < 0 Then
'Do something
End If
您可以在 KeyDown 事件或 Timer 或任何东西中检查键。希望这可以帮助。
您可以使用 xpda 的答案中的关键事件来处理它,或者,如果您已经有一个 MenuItem来执行相同的操作,则可以设置 ToolStripMenuItem 的ShortcutKeys属性。