菜单的键盘顺序快捷键

时间:2012-12-14 08:54:43

标签: c# .net visual-studio menu keyboard-shortcuts

我希望我正在开发的程序(在C#.net中)有一个序列快捷方式来访问菜单系统中的各种按钮。

例如: Ctrl + W O

首先,用户按 Ctrl + W ,然后按 O

Visual Studio将这种方法用于其中的一些菜单快捷方式。

当我编辑菜单时,我只限于一个快捷键 Ctrl + W 或只是 O ,我无法排序它们。

这可能与现有框架有关吗?

1 个答案:

答案 0 :(得分:2)

只需你可以这样做:

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
  if (previousKeyEvent != null)
  {
    if (previousKeyEvent.Modifiers == Keys.Control && previousKeyEvent.KeyCode == Keys.W && e.KeyCode == Keys.O)
    {
      MessageBox.Show("Ctrl + W then O");
    }
    else
    {
      MessageBox.Show("Not handled");
      previousKeyEvent = null;
    }
  else
    previousKeyEvent = e;
  }
}

需要考虑的事项

  • 单键组合 - 处理不在a范围内的组合 以前的重要事件。
  • 显示您正在等待的标签 用户输入,就像visual studio。
  • 使用ShortCutKeyDisplayString属性显示菜单项旁边的自定义快捷方式。
相关问题