本文主要是介绍[MFC]学习笔记:Dialog 屏蔽Enter ESC退出的功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在写煲耳机的软件中遇到了Dialog Box按“Enter” & “ESC” 按键会退出程序的问题。
参考了:http://bbs.csdn.net/topics/20427950
之后按照自己的需求修改了:
private:
void OnOK(void);
BOOL PreTranslateMessage(MSG* pMsg);
void CSmartBurnInDlg::OnOK(void)
{
// Don't active OnOK process
//CDialog::OnOK();
}
BOOL CSmartBurnInDlg::PreTranslateMessage(MSG* pMsg)
{
// Disable "esc" key
if((WM_KEYDOWN == pMsg->message) && (VK_ESCAPE == pMsg->wParam))
{
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
满足了自己需求:
1. 屏蔽“ESC”
做法就是:重载“PreTranslateMessage” 并屏蔽“VK_ESCAPE” Key
2. 屏蔽Enter退出,但仍然有按Enter进入的功能
做法就是重载OnOK,但不做处理。
记录一下,以备后查。
参考资料:
http://bbs.csdn.net/topics/20427950
这篇关于[MFC]学习笔记:Dialog 屏蔽Enter ESC退出的功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!