码迷,mamicode.com
首页 > 编程语言 > 详细

MFC 对话框Dialog响应键盘事件

时间:2015-02-12 16:11:48      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:mfc   对话框   键盘   

  1. OnKeyDown不行

Dialog程序本来没有直接响应键盘的事件,如果你用OnKeyDown会发现不起作用。
那么你想按下“左键”、“W键”、“9键盘”应该怎么响应呢?
重载基类的BOOL PreTranslateMessage(MSG* pMsg)函数

  1. 最简单的键盘响应函数

头文件声明:
BOOL PreTranslateMessage(MSG* pMsg);
源文件定义:
BOOL CmfcDlg::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_KEYDOWN)
{
switch (pMsg->wParam)
{
case VK_ESCAPE://屏蔽ESCAPE键
return TRUE;
//VK_A - VK_Z are the same as ASCII ‘A’ - ‘Z’ (0x41 - 0x5A) 不区分大小写
case ‘A’:
AfxMessageBox(_T(“A key down”));return TRUE;
case VK_RIGHT:
AfxMessageBox(_T(“-> key down”));return TRUE;
case ‘0’:
AfxMessageBox(_T(“0 key down”));return TRUE;
default:
return TRUE;
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}

MFC 对话框Dialog响应键盘事件

标签:mfc   对话框   键盘   

原文地址:http://blog.csdn.net/calmreason/article/details/43763249

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!