您的位置:首页 > 其它

VC中对话框如何屏蔽ESC和ENTER键

2009-08-25 21:15 609 查看
有三种方法:
(1) 重载CDialog的两个虚函数
virtual void OnOK();
virtual void OnCancel();
使其什么也不做。
最后,不要忘记重载WM_CLOSE消息,在其中加入DestroyWindow();以销毁窗体。
(2) 在对话框的属性中将另一按钮设为defaultbutton。
(3) 重载PreTranslateMessage消息,在其中加欲处理 ,如下:
BOOL CTeeeDlg::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message ==WM_KEYDOWN)
{
int nVirtKey = (int) wParam;
if (nVirtKey==VK_RETURN)
{
......//如果是回车在这里做你要做的事情,或者什么也不作
return TRUE;
}
if (nVirtKey==VK_ESCAPE)
{
......//如果是ESC在这里做你要做的事情,或者什么也不作
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: