加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 自定义菜单快捷键

发布时间:2020-12-15 04:23:43 所属栏目:百科 来源:网络整理
导读:我正在开发一个在其上面有一个菜单的应用程序.我想对快捷键使用不同的方法(就是这个片段):这是用于快捷键:CTRL N,1 bool prefixSeen = false;protected override bool ProcessCmdKey(ref Message msg,Keys keyData){ if (prefixSeen) { switch (keyData) {
我正在开发一个在其上面有一个菜单的应用程序.我想对快捷键使用不同的方法(就是这个片段):这是用于快捷键: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);
}

代码取自here.

这是我的菜单:

我想在菜单项中显示(在右边对齐)快捷键(我应该将其解释为字符串).我怎样才能达到这个效果?

在此先感谢,祝每一个人新年快乐.

编辑:Visual Studio的内置方法是:

解决方法

使用 MenuItem.ShortCutMenuItem.ShowShortCut属性.

如果要创建自己的自定义快捷方式,这些属性将不适合您,因为它们依赖于预定的ShortCut键枚举.在这种情况下,我建议您将其添加到菜单的文本,没有自动的方法.

由于有人指出您正在使用ToolStripMenuItems,因此您应该能够独立地将ShortCutKeyDisplayString设置为您想要的任何内容.您仍然需要自己处理实际的快捷方式.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读