WinForm中为按钮添加键盘快捷键,超简单,亲测有效

  博主并没有多少Windows平台下程序的开发经验,一年前使用过MFC设计过一个指纹识别系统的页面,后来就没有使用过几次。现在C#课程实验要求实现一个简易计算器,为了便于快速录入数据,使用键盘会比使用鼠标点击按钮高效很多。比如按下小键盘的数字1,能够实现和用鼠标点击按钮1一样的效果就行。

  WinForm中为按钮添加键盘快捷键,超简单,亲测有效

  百度了一遍,找到的教程几乎是一模一样的,各种csdn转载的博文上都提供了好几种方法,但试了没有一个管用,不知道什么地方配置出错了。后来Google了一下,点击第一个搜索结果,StackOverFlow的问答,顺利解决了我的问题。

  要实现自定义键盘按键,只要覆写protected override bool ProcessCmdKey(ref Message msg, Keys keyData)这个方法(函数)就好了。

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)

{

            // if it is a hotkey, return true; otherwise, return false

            switch (keyData)

            {

                case Keys.NumPad0:

                    //焦点定位到控件button_num_0上,即数字0键上

                    button_num_0.Focus();

                    //执行按钮点击操作

                    button_num_0.PerformClick();

                    return true;

                case Keys.NumPad1:

                    button_num_1.Focus();

                    button_num_1.PerformClick();

                    return true;   

                //......

                default:

                    break;

              }

            return base.ProcessCmdKey(ref msg, keyData);

}     

  完整的项目示例代码请看这篇文章:http://www.cnblogs.com/zyfdeblog/p/4567071.html

  原创文章,转载时务必附上原文地址。谢谢。

你可能感兴趣的:(WinForm)