MFC 接收键盘输入指令
程序接收键盘输入并作出相应的反馈是一个非常常见的功能,在MFC中提供了WM_KEYDOWN,WM_KEYUP这些消息来反便我们进行编程,但是这是在窗体没有其他控件的情况下才适用的。当有其他控件时,其他控件(其实也是窗体)肯定会有一个获得焦点使得这些消息失效,我们可以通过重载对话框程序的PreTranslateMessage(MSG* pMsg)虚函数来实现这一功能。
首先在对话框类中先声明下:
[cpp]view plaincopy
BOOLPreTranslateMessage(MSG*pMsg);
- 然后就可以直接对键盘消息进行处理了,示例如下:
[cpp]view plaincopy
BOOLDlg::PreTranslateMessage(MSG*pMsg)//Dlg为对话框类
{
if(pMsg->message==WM_KEYDOWN)
{
switch(pMsg->wParam)
{
caseVK_UP:
printf("UPn");break;
caseVK_DOWN:
printf("DOWNn");break;
caseVK_LEFT:
printf("LEFTn");break;
caseVK_RIGHT:
printf("RIGHTn");break;
default:
break;
}
}
returnCDialog::PreTranslateMessage(pMsg);
}
- 由上述的代码也可以发现,我们不仅仅可以响应键盘消息,只要愿意,可以自己在这里定义一个消息循环来处理想做的事。
- 1微信公共平台导航:微信还有一颗图片社交的心
- 2网站优化中的标题拟写注意事项
- 3做微商没客源?几个小技巧让你精准加粉
- 4微信公众账号导航资讯:微信4.5的快刀 杀山中贼,也杀心中贼!
- 5鬼脚七:全面解读微信公众号运营七大问题
- 6微信“摇”出来的女友 同居两天顺走他的iPhone
- 7国际域名与国内域名
- 8微信打算这样做游戏:在社交场景中培养攀比心
- 9微信导航:用微信公众账号筹备婚礼,看看36氪男人们的浪漫
- 10企业如何快速建站
- 11窝窝团抢先赴美IPO 或将引爆O2O万亿级市场
- 12临沂APP开发如何设定App的推广目标
- 13海义:未来品牌内容营销的10个趋势
- 14化妆品类做微信营销如何寻找突破点?
- 15做网络营销必须具备的6个能力
- 16微信公众账号宝典:查看正在使用微信的QQ好友、手机通讯录好友
- 17中扬科技临沂APP的发展前景
- 18中文域名的使用方式
- 19如何掌握微信营销的技巧
- 202015淘商怎么做?六招教你春季新品销量破零!
- 21微信二维码资讯:加 电视粉 微信好友 免费赢手机话费
- 22微信推广软件与社交时代报不相同的模式有哪几种?
- 23怎样让您的网站更加吸引人
- 24域名解释
- 25免费微信营销软件与外交BBC皆不同的功能有哪几种?
- 26弄清楚进销存软件三个问题,让你不被忽悠
- 27小i机器人接入微信语音API,实现人机语音交互
- 28领航电商提供销量优化服务,安全与效果并存
- 292015最新的个人贷款调查报告有哪些内容
- 30微信营销目前存在问题的问题