이것저것/My_Work

[MFC] - 키보드 메시지 처리

우담바라 2009. 3. 3. 21:46


Dialog베이스 환경에서 메시지 키보드를 이용하기 위해서,

OnKeyDown 등의 함수를 이용하여 처리 하려고했다.

모든 에러도 없이 정상 컴파일 했으나,

아무리 키보드를 눌러도 반응이 없다;;;

여기 저기 인터넷을 둘러 본 결과;;;

OnKeyDown등은 View 클래스에 우선권이 있어,

Dialog나 기타 클래스에서는 정상 호출이 되지 않을 수도 있단다;;;


그래서 방법전환;

PreTranslate Message 함수 이용!!

BOOL CPowerManagementDlg::PreTranslateMessage(MSG *pMsg)
{
   CString str;

   if(pMsg->message == WM_KEYDOWN)
   {
       str.Format("키 눌러짐 ");
       MessageBox(str);
    }

    //return CDialog::PreTranslateMessage(pMsg);
    return 0;
}



정상 동작 확인;;