본문 바로가기
프로그래밍/윈도우 프로그래밍

[MFC] 다이얼로그에서 ESC, 엔터와 같은 키의 처리

by 체리 2009. 6. 11.
반응형
출처 : http://dffect.cafe24.com/blog/

1. VC2005 이상의 툴이라면(아마 VS2003도 마찬가지일 듯) 다이얼로그 클래스를 선택하고 Properties 창에서 Overrides 아이콘을 선택한다.

2. 스크롤을 죽 내리다 보면 PreTranslateMessage 함수가 보일텐데 이 함수를 추가해 준다.

3. 아래와 같은 코드를 작성한다. (여기에서는 ESC와 엔터키만 처리하였다)
 BOOL CCherryRadioDlg::PreTranslateMessage(MSG* pMsg)
{
    // ESC 키
    if((pMsg->message == WM_KEYDOWN) && (pMsg->wParam == VK_ESCAPE))
    {
        // 여기에 원하는 동작의 코드를 삽입
        return true;
    }

    // 엔터키
    if((pMsg->message == WM_KEYDOWN) && (pMsg->wParam == VK_RETURN))
    {
        // 여기에 원하는 동작의 코드를 삽입
        return true;
    }
    return CDialog::PreTranslateMessage(pMsg);
}


반응형

댓글