다이알로그 Enter, ESC 키입력에 대한 종료 막기

매우 많은 방법이 있지만..

1. Enter 키에 대한 종료 막기

다이알로그가 Enter키를 입력받게 되면 OnOK() 함수가 실행되게 되는데
그 부분에 다이알로그를 종료하는 코드가 있다.
새로 만든 다이알로그에서 OnOK() 함수를 오버라이딩 하면 된다.
void CXDialog::OnOK() {}

2. ESC 키에 대한 종료 막기

ESC 키를 입력 받으면 OnCancel() 함수가 실행되어 다이알로그가 종료한다.
역시 OnCancel() 함수를 오버라이딩 하면 되지만,
이렇게 하면 시스템메뉴의 종료또한 동작을 멈추게 된다.
키 입력 메시지가 오면 OnCancel() 이 동작하기 전에 가로 챈다.
BOOL CXDialog::PreTranslateMessage(MSG* pMsg) 
{
// ESC 키 입력에 대한 종료 막기
if (pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_ESCAPE)
return TRUE;

return CDialog::PreTranslateMessage(pMsg);
}