为什么重载ONOK与PreTranslateMessage后,对话框打不开解决思路

为什么重载ONOK与PreTranslateMessage后,对话框打不开
我想屏掉对话框的回车关闭窗口的功能,但出现如题所示的问题。
为什么重载ONOK与PreTranslateMessage后,对话框打不开

------解决方案--------------------
BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg)
{
if(WM_KEYFIRST <= pMsg-> message && pMsg-> message <= WM_KEYLAST)
{
if(pMsg-> wParam == VK_RETURN || pMsg-> wParam == VK_ESCAPE) return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}

------解决方案--------------------
重载CDialog::OnOK就可以了
------解决方案--------------------
要是焦点在OK或Cancel按钮上,点回车关闭窗口是正常的

如果焦点在Edit框上,点回车也会关闭窗口,不像这样的话,就改写Edit的OnChar()函数,当ch是回车的时候,不做处理
------解决方案--------------------
如果是按了回车,就不要执行对话框中的CDialog::OnOK就好。
------解决方案--------------------
为什么重载ONOK与PreTranslateMessage后,对话框打不

贴关键代码看看

不应该的
而且两者选一应该就可以解决了吧