基于对话框MFC按Enter键或者Ese退出的解决方法

基于对话框MFC按Enter键或者Ese退出的解决方法

今天在用VC++6.0写数据库软件时。偶然发现单击回车键enter时,程序会突然退出。并且窗口开始时的默认确定按钮已经被我删除了,所以必要的措施必然做出,VC MFC 屏蔽ESC和ENTER键关闭对话框

解决途径:

在你的C...Dlg.h文件中添加重载函数PreTranslateMessage(MSG* pMsg)


具体代码

protected:
	virtual BOOL PreTranslateMessage(MSG* pMsg);
// 屏蔽客户输入esc键或enter键退出程序
BOOL CSQLDlg::PreTranslateMessage(MSG* pMsg)
{ 
	// TODO: 在此添加专用代码和/或调用基类
	if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_ESCAPE)// 屏蔽esc键
	{	
		return TRUE;// 不作任何操作
	}
	if (pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_RETURN)// 屏蔽enter键
	{
		return TRUE;// 不作任何处理
	}
	return CDialog::PreTranslateMessage(pMsg);
}


完美解决问题

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章