如何让VC对话框不接受回车键与ESC键
2011-06-10 14:04
309 查看
在基于对话框的程序中,当按下ESC或回车键时,程序就会被关闭,怎样才能避免这种情况发生?
有两种解决办法: 1.覆盖CDialog::OnOk和CDialog::OnCancel虚函数,让其函数体为空。但是这样做还不够, 因为仅仅这样,对话框就不能关闭了。解决办法很简单,再加上WM_CLOSE消息处理函数, 在其函数体中写上EndDialog(IDCANCEL);就可以了。 2.覆盖CWnd::PreTranslateMessage虚函数,其函数体内容如下: if (pMsg->message == WM_KEYDOWN && (pMsg->wParam == VK_ESCAPE || pMsg->wParam == VK_ENTER)) { return TRUE; } return CDialog::PreTranslateMessage(pMsg); 两种办法还是有差别的,第二种办法让对话框的所有控件不能接收到回车键和取消键,只有多行Edit控件可以得到回车键。第一种办法不影响对话框上控件的正常工作,因此是推荐的方法。 |
相关文章推荐
- 如何让VC对话框不接受回车键与ESC键
- VC 对话框屏蔽ESC 和回车键 默认结束对话框
- vc中对话框如何屏蔽ESC和ENTER键
- VC中对话框如何屏蔽ESC和ENTER键
- VC关于对话框界面上按回车和ESC键退出问题的处理
- VC中对话框如何屏蔽ESC和ENTER键
- VC里基于对话框的程序屏蔽回车键和ESC自动退出程序
- VC++防止对话框中按回车或ESC时窗口关闭
- vc中对话框如何屏蔽ESC和ENTER键
- VC对话框如何接受拖拽文件
- vc中对话框如何屏蔽ESC和ENTER键
- VC如何获取对话框中控件的坐标
- MFC中回车,空格,ESC,F1键盘操作对对话框的影响处理
- VC/MFC如何设置对话框背景颜色
- MFC中屏蔽ESC和回车关闭对话框
- VC/MFC如何设置对话框背景颜色
- vs2008 vc 对话框中如何实现水晶报表导出EXCEL文件
- vc 如何让对话框程序启动后隐藏
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色