vc中对话框如何屏蔽ESC和ENTER键
2008-04-02 11:17
369 查看
在VC6.0中,我们可以对CDialog选中,按F12,然后在该类中找到虚函数
virtual void OnOK();
virtual void OnCancel();
我们改写他。
屏蔽ESC/Enter:方法一:
重载CDialog的OnCancel ,且让这两个函数的实现为空。
加入WM_CLOSE消息处理,实现如下,
void CMyDialog::OnClose()
{
DestroyWindow();
}
屏蔽ESC/Enter:方法二:
将另一按钮设为defaultbutton在属性中改。
也可重载对话框类的PreTranslateMessage(MSG* pMsg)这个虚函数
在其中加入如下代码BOOL CTeeeDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if (pMsg->message ==WM_KEYDOWN)
{
int nVirtKey = (int) wParam;
if (nVirtKey==VK_RETURN)
{
......//如果是回车在这里做你要做的事情,或者什么也不作
return TRUE;
}
if (nVirtKey==VK_ESCAPE)
{
......//如果是ESC在这里做你要做的事情,或者什么也不作
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
virtual void OnOK();
virtual void OnCancel();
我们改写他。
屏蔽ESC/Enter:方法一:
重载CDialog的OnCancel ,且让这两个函数的实现为空。
加入WM_CLOSE消息处理,实现如下,
void CMyDialog::OnClose()
{
DestroyWindow();
}
屏蔽ESC/Enter:方法二:
将另一按钮设为defaultbutton在属性中改。
也可重载对话框类的PreTranslateMessage(MSG* pMsg)这个虚函数
在其中加入如下代码BOOL CTeeeDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if (pMsg->message ==WM_KEYDOWN)
{
int nVirtKey = (int) wParam;
if (nVirtKey==VK_RETURN)
{
......//如果是回车在这里做你要做的事情,或者什么也不作
return TRUE;
}
if (nVirtKey==VK_ESCAPE)
{
......//如果是ESC在这里做你要做的事情,或者什么也不作
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
相关文章推荐
- VC中对话框如何屏蔽ESC和ENTER键
- vc中对话框如何屏蔽ESC和ENTER键
- VC MFC 屏蔽ESC和ENTER键关闭对话框
- VC MFC 屏蔽ESC和ENTER键关闭对话框
- VC中对话框如何屏蔽ESC和ENTER键
- VC MFC 屏蔽ESC和ENTER键关闭对话框
- vc中对话框如何屏蔽ESC和ENTER键
- MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法
- MFC对话框程序屏蔽ESC和ENTER键退出
- VS2010 MFC中屏蔽ESC和ENTER键关闭对话框的方法
- MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法
- MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法
- VS2010 MFC中屏蔽ESC和ENTER键关闭对话框的方法
- MFC用代码实现屏蔽ESC和Enter键按下,对话框窗体关闭或者消失的问题
- MFC对话框中屏蔽Enter键与ESC键
- vc 对话框程序里,如何在密码输入框显示为****,屏蔽掉密码
- 屏蔽Dialog对话框中的Esc和Enter键的思路
- VC 对话框屏蔽ESC 和回车键 默认结束对话框
- MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法
- vc屏蔽Esc按键退出对话框