MESSAGE_HANDLER
메시지 맵에 엔트리를 정의합니다.
MESSAGE_HANDLER(
msg,
func
)
매개 변수
msg
[in] Windows 메시지입니다.func
[in] 메시지 처리기 함수의 이름입니다.
설명
MESSAGE_HANDLERWindows 메시지를에 지정 된 처리기 함수를 매핑합니다.
지정 된 함수는 MESSAGE_HANDLER 매크로 다음과 같이 정의 해야 합니다.
LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
메시지 맵 세트 bHandled 에 TRUE 전에 MessageHandler 라고 합니다. 경우 MessageHandler 메시지를 완전히 처리 하지 않는 설정 해야 bHandled 에 FALSE 필요 합니다 라는 메시지가 더 이상 처리를 나타냅니다.
참고
항상 메시지 맵을 시작 BEGIN_MSG_MAP.에서는 다음 후속 대체 메시지 맵을 사용 하 여 선언할 수 있습니다 ALT_MSG_MAP.END_MSG_MAP 매크로 메시지 맵의 끝을 표시 합니다.모든 메시지 맵에서의 인스턴스를 하나만 있어야 합니다. BEGIN_MSG_MAP 및 END_MSG_MAP.
이외에 MESSAGE_HANDLER를 사용할 수 있습니다 COMMAND_HANDLER 및 NOTIFY_HANDLER 매핑할 WM_COMMAND 및 WM_NOTIFY 각각 메시지.
ATL에서는 메시지 맵을 사용 하는 방법에 대 한 자세한 내용은 메시지 맵.
예제
class CMyBaseWindow : public CWindowImpl<CMyBaseWindow>
{
public:
BEGIN_MSG_MAP(CMyBaseWindow)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
END_MSG_MAP()
// When a CMyBaseWindow object receives a WM_CREATE message, the message
// is directed to CMyBaseWindow::OnCreate for the actual processing.
LRESULT OnCreate(UINT /*nMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/,
BOOL& /*bHandled*/)
{
return 0;
}
};
요구 사항
헤더: atlwin.h