'WM_COMMAND'에 해당되는 글 1건

  1. 2007.10.17 Notification Message( 통지 메시지, WM_COMMAND )

컨트롤은 자신에게 무슨 일이 일어났을 때, 예를 들어 버튼을 클릭했다거나 에디트에 문자열을 입력했다거나 할 경우 부모 윈도우로 통지 메시지( Notification Message )를 보내 어떤 사건이 발생했는지를 알린다.


버튼을 클릭할 경우 WM_COMMAND 메시지를 부모 윈도우에게 보내며 이때 전달되는 정보는 다음과 같다.


HIWORD( wParam )

통지 코드, 차일드 컨트롤이 왜 메시지를 보냈는가를 나타내는 값


LOWORD( wParam )

컨트롤의 ID


lParam

메시지를 보낸 차일드 윈도우의 윈도우 핸들



WM_COMMAND 메시지는 컨트롤의 통지 메시지뿐만 아니라 메뉴 항목, 액셀러레이터 등의 명령을 처리하는 중요한 일을 한다. 이름 그대로 버튼을 누르거나, 메뉴를 선택하거나 액셀러레이터를 누르는 등 사용자로부터의 명령이 될 만한 것들을 모두 처리한다. 이때 컨트롤의 ID, 메뉴 ID, 액셀러레이터 ID 등은 모두 LOWORD( wParam ) 으로 전달되므로 이 세 가지 명령들끼리는 0 ~ 65535 까지의 범위에서 상호 중복되지 않는 ID 를 가져야 한다.

Posted by 명혀니
,