网上试了几种方法,其中一种最接近
头文件声明:
BOOL CTestDlg::PreTranslateMessage(MSG* pMsg)
CPP文件实现:
BOOL CTestDlg::PreTranslateMessage(MSG* pMsg) //屏蔽回车和Esc键的响应
{
if(pMsg-> message==WM_KEYDOWN && pMsg-> wParam==VK_ESCAPE)
{
return TRUE;
}
if(pMsg-> message==WM_KEYDOWN && pMsg-> wParam==VK_RETURN)
{
return TRUE;
}
else
{
return CDialog::PreTranslateMessage(pMsg);
}
}
但是这种方式在我做页游微端的时候,不太好用,这个会将消息吞掉,页面就收不到了,琢磨了下,改成如下实现即可:
BOOL CTestDlg::PreTranslateMessage(MSG* pMsg) //屏蔽回车和Esc键的响应
{
// allow tooltip messages to be filtered
if (CWnd::PreTranslateMessage(pMsg))
return TRUE;
// filter both messages to dialog and from children
return FALSE;
}