본문 바로가기

프로그래밍

WM_MOUSEACTIVATE

비활성화 된 윈도우에 마우스 클릭을 할 경우
WM_MOUSEACTIVATE -> WM_ACTIVATE 메시지가 순차로 전달되는데

마우스 클릭에 의한 WM_ACTIVATE 메시지는
WM_MOUSEACTIVATE 메시지를 먼저 보내고 그에 대한 리턴값을 가지고 처리를 하게 된다.
WM_MOUSEACTIVATE 메시지의 리턴값으로 아래 4가지 값이 있다.

MA_ACTIVATE                   윈도우를 활성화 하고 마우스 메시지를 처리한다.
MA_ACTIVATEANDEAT       윈도우를 활성화 하고 마우스 메시지를 무시한다.
MA_NOACTIVATE               윈도우를 활성화 하지 않고 마우스 메시지를 처리한다.
MA_NOACTIVATEANDEAT   윈도우를 활성화 하지 않고 마우스 메시지를 무시한다.

MA_NOACTIVATE(ANDEAT) 값을 리턴할 경우 WM_ACTIVATE 메시지가 전달되지 않게 되어
마우스를 아무리 클릭하더라도 윈도우가 활성화 되지 않는다.