티스토리 뷰

MFC로 다이얼로그를 만들었을 때 엔터키나 ESC키를 누르면 창이 바로 종료되는
현상이 있다.

사실은 OnOk()와 OnCancel()이 기본 버튼으로 설정되어있어서 그런 것이다.

아래와 같은 코드를 사용하면 사용을 무효화 할 수 있다.

BOOL 다이얼로그클래스::PreTranslateMessage(MSG* pMsg)
{
    // TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다.
    if( pMsg->message == WM_KEYDOWN )
    {
        if( pMsg->wParam == VK_ESCAPE || VK_RETURN )
            return TRUE;
    }
    return CDialog::PreTranslateMessage(pMsg);
}


댓글