ダイアログのクラスのPreTranslateMessage関数で、VK_RETURN、VK_ESCAPEをキャッチし、CDialogの実装の処理が行なわれないようにします。
BOOL CXXXDialog::PreTranslateMessage(MSG* pMsg) { if( WM_KEYDOWN == pMsg->message ) { switch( pMsg->wParam ) { case VK_RETURN: return FALSE; case VK_ESCAPE: return FALSE; default: break; } } return CDialog::PreTranslateMessage(pMsg); }
ネタ元