2017-03-09 243 views
2

我需要设置快捷键Ctrl + "Plus Sign"用于MenuStrip菜单项之一。如何设置快捷键快捷键“Ctrl +加号”

我更愿意把它无法以编程方式有一个帮助文本块中的菜单项的右侧:

Screenshot of menu

,但我看不出有这样的变型来选择。最接近的是“OemPlus”

+0

我不记得它的名字,但我确定你可以找到它..菜单项上有一个属性,它允许你用任何你喜欢的文本覆盖热键文本。 –

回答

2

Oemplus是正确的设置。如果您不喜欢该文字,也可以更改ShortcutKeyDisplayString。到Ctrl++

Screenshot of Hotkey

注意,它被称为OemPlus而不是NumPlus,所以不适用于数字键盘加工作。有些人似乎不知道加号的位置,并会尝试使用Numpad plus。

如果同时需要,你需要KeyPreview = true和代码:

protected override bool ProcessCmdKey(ref Message msg, Keys keyData) 
{ 
    if (keyData == (Keys.Control | Keys.Add)) 
    { 
     MessageBox.Show("Ctrl+Numplus"); 
     return true; 
    } 
    if (keyData == (Keys.Control | Keys.Oemplus)) 
    { 
     MessageBox.Show("Ctrl+Oemplus"); 
     return true; 
    } 
    return base.ProcessCmdKey(ref msg, keyData); 
} 
+0

但是+和 - 在数字键盘上工作正常,无论是否启用了数字锁定。另外一个与“=”位于同一个按钮上。并且不能工作。所以通过逻辑numpad加减必须工作。但他们没有。 – Andrew

+0

了解我的问题。谢谢。是否可以同时使用快捷键?我的意思是NUM快捷键+ OEM快捷键。 – Andrew

+1

@Andrew:我更新了问题。那么你需要代码。 –