MFC对话框按下回车和Esc键关闭的解决
2010-07-16 11:11
399 查看
在对话框程序中,如果回车没有设定动作的话,会与Esc键一样,将对话框关闭,给用户造成困扰。要解决该问题,需要拦截消息。
首先在对话框程序中添加PreTranslateMessage()函数,在函数中对回车和Esc键的按下进行转发,不进行任何处理。参考自MFC GridControl2.26的demo。
if( pMsg->message == WM_KEYDOWN )
{
if(pMsg->wParam == VK_RETURN
|| pMsg->wParam == VK_ESCAPE )
{
::TranslateMessage(pMsg);
::DispatchMessage(pMsg);
return TRUE; // DO NOT process further
}
}
首先在对话框程序中添加PreTranslateMessage()函数,在函数中对回车和Esc键的按下进行转发,不进行任何处理。参考自MFC GridControl2.26的demo。
if( pMsg->message == WM_KEYDOWN )
{
if(pMsg->wParam == VK_RETURN
|| pMsg->wParam == VK_ESCAPE )
{
::TranslateMessage(pMsg);
::DispatchMessage(pMsg);
return TRUE; // DO NOT process further
}
}
相关文章推荐
- MFC中默认回车或ESC会关闭对话框,解决办法:
- MFC中屏蔽ESC和回车关闭对话框
- MFC中屏蔽ESC和回车关闭对话框
- MFC中屏蔽ESC和回车关闭对话框
- MFC中解决回车和ESC关闭的问题,重载OnOk(),OnCancel()函数的正确做法
- MFC学习(13)解决回车键 ESC 默认关闭窗口的一般方法——续
- MFC对话框按回车和Esc不会关闭的方法
- 【转】关闭对话框,OnClose和OnCancel MFC中屏蔽ESC和回车关闭对话框
- MFC中解决回车和ESC关闭的问题,重载OnOk(),OnCancel()函数的正确做法
- MFC对话框模式解决,回车,esc问题
- MFC(10)解决回车键 ESC 默认关闭窗口的一般方法
- MFC中屏蔽ESC和回车关闭对话框
- 关于MFC中回车关闭对话框的问题的解决
- MFC对话框程序: 回车,ESC对话框消失解决办法总结
- 屏蔽对话框回车和ESC键,防止对话框意外关闭。
- MFC关于解决点击关闭,对话框仍有后台程序运行问题 .
- MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法
- VS2010 MFC中屏蔽ESC和ENTER键关闭对话框的方法
- 屏蔽基于对话框的MFC程序中按下ESC关闭窗口的功能
- MFC中回车,空格,ESC,F1键盘操作对对话框的影响处理