개발 관련/Windows 개발
PreTranslateMessage() 처리 방식 문제
청년코더
2013. 1. 8. 10:41
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; } }