MFC

[MFC] Dialog에서 Enter, ESC 입력 막기

dev_bear 2022. 3. 31. 17:09

Dialog에서 Enter, ESC 입력 막기

MFC에서 Dialog를 사용할 때 Enter, ESC를 입력하면 Dialog가 닫힙니다.

PreTranslateMessage에서 그것을 막을 수 있습니다.

PreTranslateMessage 설정

클래스 마법사 > 가상함수 에서 PreTranslateMessage를 추가합니다.

BOOL CDlgSample::PreTranslateMessage(MSG* pMsg)
{
    if (pMsg->message == WM_KEYDOWN)
    {
        if (pMsg->wParam == VK_RETURN || pMsg->wParam == VK_ESCAPE)
        {
            return TRUE;
        }
    }
    return CDialogEx::PreTranslateMessage(pMsg);
}

PreTranslateMessage에서는 메시지를 사전에 필터링 할 수 있습니다.

자세한 내용은 아래 링크를 참고하시면 됩니다.

https://docs.microsoft.com/ko-kr/cpp/mfc/reference/cwinapp-class?view=vs-2019#pretranslatemessage

반응형