메시지 맵은 Win32 API 윈도우 프로시저 함수에서 볼 수 있는 switch 문을 대체하는 것입니다. 메시지 맵은 특정 메시지 발생시 어떤 함수를 호출해야하는지 명시하는 매크로의 집합체입니다.
// CMainFrame
IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd)
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
ON_WM_CREATE()
END_MESSAGE_MAP()
MFC 메시지 맵은 BEGIN_MESSAGE_MAP() 매크로와 END_MESSAGE_MAP() 매크로를 이용하여 시작과 끝을 명시합니다. ON_WM_CREATE() 매크로는 WM_CREATE 메시지 핸들러 함수를 등록할 경우 추가되는 매크로입니다. 메시지의 등록은 사람이 직접 입력하기 보다 마법자를 통해 변경합니다. 클래스 뷰의 속성에 들어가면 등록할 수 있는 메시지 리스트가 있는데 여기에 핸들러 함수를 추가해줌으로써 사용할 수 있습니다.