博主并没有多少Windows平台下程序的开发经验,一年前使用过MFC设计过一个指纹识别系统的页面,后来就没有使用过几次。现在C#课程实验要求实现一个简易计算器,为了便于快速录入数据,使用键盘会比使用鼠标点击按钮高效很多。比如按下小键盘的数字1,能够实现和用鼠标点击按钮1一样的效果就行。
百度了一遍,找到的教程几乎是一模一样的,各种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.VEVb.com/zyfdeblog/p/4567071.html:
原创文章,转载时务必附上原文地址。谢谢。
新闻热点
疑难解答