有三种方法:
(1) 重载CDialog的两个虚函数
virtual void OnOK();
virtual void OnCancel();
使其什么也不做。
最后,不要忘记重载WM_CLOSE消息,在其中加入DestroyWindow();以销毁窗体。
(2) 在对话框的属性中将另一按钮设为defaultbutton。
(3) 重载PreTranslateMessage消息,在其中加欲处理 ,如下:
BOOL CTeeeDlg::PreTranslateMessage(MSG* pMsg)
{
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);
}