如何在Windows Forms应用程序中创建Alt快捷方式?

12

我想为我的Windows表单应用程序中的某些控件创建键盘快捷方式。

例如:

XYZ的屏幕截图

注意下划线, F E V P B。

我有一个标签和一个文本框控件。 我想将Alt键盘快捷键与标签和文本框关联起来。 因此,如果有人按下Alt + B,则焦点将被放在相关的文本框中。 有没有办法创建这种关联?

3个回答

13

9

输入&File&Edit将使其下划线。这将自动将带有下划线的字母绑定到Alt关键字以供快捷操作。

编辑。 您的问题已被修改,因此我想跟上我的回答。您想要捕获一些键盘组合(Alt + F)并将焦点设置到文本框中。

您可以尝试使用主窗体的KeyDown事件来解决此问题。

    private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.Alt && e.KeyCode == Keys.F)
        {
            this.textBox1.Focus();
        }
    }

为了实现这一点,您还需要将窗体的KeyPreview属性设置为true

1
这似乎不起作用。我正在使用TabPage控件,我希望“字体”中的F被下划线标记。更改tagPage1的.Text属性并不能将其下划线标记。 - delete
你提供的图片显示了一个菜单栏。你想要一个名为“字体”的选项卡(F下划线),并在按下“Alt + F”后显示该选项卡。我的理解正确吗? - nan

0
this.KeyDown += new KeyEventHandler(Form1_KeyDown);

void Form1_KeyDown(object sender, KeyEventArgs e) 
{ 
 if (e.Alt && e.KeyCode == Keys.W)
 { 
   btnShowConstructionCdFun(); 
 } 
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接