PreTranslateMessage()를 처리할 때 간과하는 것이 KEY_DOWN, KEY_UP에 대한 처리를 무시하는 것이다.
실제로 아래와 같은방식으로 처리하게 되면 함수 호출이 두번 수행되게 된다.
if( pMsg->wParam == VK_RETURN ) { OnClickedButton(); return TRUE; }
따라서, 아래처럼 KEY_DOWN, KEY_UP에 대한 처리를 한 후에 입력 키값을 비교해야 한다.
if ( pMsg->message == WM_KEYDOWN ) { if( pMsg->wParam == VK_RETURN ) { OnClickedButton(); return TRUE; } }
'개발 관련 > Windows 개발' 카테고리의 다른 글
Visual studio 찾기 및 바꾸기 wildcards option (0) | 2013.01.16 |
---|---|
윈도우 핸들로 컨트롤(Button, Edit, Combo.. ) 구분하는 방법 (0) | 2013.01.12 |
Modeless dialog 동적 생성 후 삭제시 메모리 해제 문제 (0) | 2013.01.05 |
Create()를 사용해서 윈도우를 생성할 때 WS_POPUP 문제 (0) | 2013.01.03 |
다이얼로그 실행시 작업표시줄에 나타나지 않는 문제 (0) | 2013.01.02 |
댓글 로드 중…