我正在开发一个在其上面有一个菜单的应用程序.我想对快捷键使用不同的方法(就是这个片段):这是用于快捷键:CTRL N,1
bool prefixSeen = false; protected override bool ProcessCmdKey(ref Message msg,Keys keyData) { if (prefixSeen) { switch (keyData) { case (Keys.Control | Keys.D1): MessageBox.Show("New file"); prefixSeen = false; break; } } switch (keyData) { case (Keys.Control | Keys.n): prefixSeen = true; break; } return base.ProcessCmdKey(ref msg,keyData); }
这是我的菜单:
我想在菜单项中显示(在右边对齐)快捷键(我应该将其解释为字符串).我怎样才能达到这个效果?
在此先感谢,祝每一个人新年快乐.
解决方法
使用
MenuItem.ShortCut
和
MenuItem.ShowShortCut
属性.
如果要创建自己的自定义快捷方式,这些属性将不适合您,因为它们依赖于预定的ShortCut键枚举.在这种情况下,我建议您将其添加到菜单的文本,没有自动的方法.
由于有人指出您正在使用ToolStripMenuItems,因此您应该能够独立地将ShortCutKeyDisplayString
设置为您想要的任何内容.您仍然需要自己处理实际的快捷方式.