捕获Windows窗体应用程序中的组合键事件
当用户按下Shift + UP键时,我希望我的表单通过调用消息框来响应。
如何在Windows窗体中执行此操作?
处理KeyDown
事件并具有以下内容:
if (e.Modifiers == Keys.Shift && e.KeyCode == Keys.Up) { MessageBox.Show("My message"); }
事件处理程序必须位于主窗体上,您需要将KeyPreview
属性设置为true
。 这可以在属性对话框中以设计模式完成。
如果你想使用多个修饰符, KeyEventArgs
也有布尔值来指示是否按下CTRL,ALT或SHIFT。
例:
private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.Control && e.Alt && e.Shift && e.KeyCode == Keys.F12) MessageBox.Show("My message"); }
在此示例中,如果同时按下CTRL,ALT,SHIFT和F12,则会显示消息框。