WinForm中为按钮添加键盘快捷键,超简单,亲测有效
2024-10-15 11:28:38
博主并没有多少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.cnblogs.com/zyfdeblog/p/4567071.html:
原创文章,转载时务必附上原文地址。谢谢。
最新文章
- javascript event(事件对象)详解
- jq实现 按钮点击一次后 3秒后在可点击
- 【Android】android中Invalidate和postInvalidate的区别
- 寒假D1 B
- css“变形”效果
- UITableView &; UITableViewController
- Form_Form页面跳转的四种方式(open_form, call_form, new_form, fnd_function)详解(汇总)
- 微软IOC容器Unity简单代码示例1
- awk中文手册
- Qt创建窗体的过程
- Android 不规则图像填充 小玩着色游戏
- linux单项目发布流程
- 开源unittest测试报告源码BSTestRunner.py
- Qt532.线程(_beginthread)
- 20155301 Exp4 恶意代码分析
- R语言常用包分类总结
- CsvHelper文档-6类型转换
- iOS:UIPageViewController翻页控制器控件详细介绍
- iOS开发之XMPPFramework环境搭建和配置
- web安全漏洞种类
热门文章
- 新建一个mybatis HelloWorld
- java 数据结构
- Troubleshooting 'library cache: mutex X' Waits.
- Android——学习笔记
- IIS报错,App_global.asax.×××.dll拒绝访问
- JavaScript对象的创建之动态原型方式
- JNI_Android项目中调用.so动态库实现详解【转】
- Linux神器之Strace的实践(Ubuntu上服务幽灵般的消失)
- Unity AssetBundles and Resources指引 (一)
- 3.5 The Lexical-Analyzer Generator Lex