MFC中重载OnOk()和OnCancle() 正常情况下 按回车和ESC键回进入到OnOk()和OnCancle()函数里面,但是为什么我重载了却没有,在按回车和ESC的时候不进入OnOk()和OnCancle()函数里面这是为什么呢?求各位大神指点……
MFC中重载OnOk()和OnCancle() 正常情况下 按回车和ESC键回进入到OnOk()和OnCancle()函数里面,但是为什么我重载了却没有,在按回车和ESC的时候不进入OnOk()和OnCancle()函数里面这是为什么呢?求各位大神指点……
BOOL CDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if(pMsg->message==WM_KEYDOWN)
{
switch(pMsg->wParam)
{
case VK_RETURN: //屏蔽Enter
return true;
case VK_ESCAPE: //屏蔽Esc
return true;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
onok();
return true;
case VK_ESCAPE: //屏蔽Esc
oncancel();
return true;
http://blog.csdn.net/xiliang_pan/article/details/7069802
步骤应该是:1、放置一个ID为IDOK的按钮,生成函数void CxxxxDlg::OnOK
2、去掉或屏蔽里面的CDialog::OnOK();
3、在资源视图里删掉按钮控件。