アプリケーション ウィザードを使用して新しいスケルトン アプリケーションを作成すると、アプリケーション ウィザードによって、作成するコマンド ターゲット クラスごとにメッセージ マップが書き込まれます。 これには、派生アプリケーション、ドキュメント、ビュー、フレーム ウィンドウのクラスが含まれます。 これらのメッセージ マップの一部には、特定のメッセージと定義済みのコマンドに対してアプリケーション ウィザードによって提供されるエントリが既に含まれており、一部は追加するハンドラーのプレースホルダーにすぎません。
クラスのメッセージマップは、クラスの CPP ファイルにあります。 アプリケーション ウィザードで作成される基本的なメッセージ マップを操作するには、 クラス ウィザード を使用して、各クラスが処理するメッセージとコマンドのエントリを追加します。 一般的なメッセージ マップは、いくつかのエントリを追加した後、次のようになります。
BEGIN_MESSAGE_MAP(CMyView, CFormView)
ON_WM_MOUSEACTIVATE()
ON_COMMAND(ID_EDIT_CUT, &CMyView::OnEditCut)
ON_UPDATE_COMMAND_UI(ID_EDIT_CUT, &CMyView::OnUpdateEditCut)
ON_BN_CLICKED(IDC_MYBUTTON, &CMyView::OnBnClickedMybutton)
ON_WM_CREATE()
END_MESSAGE_MAP()
メッセージ マップは、マクロのコレクションで構成されます。
BEGIN_MESSAGE_MAPとEND_MESSAGE_MAPの 2 つのマクロで、メッセージ マップを角かっこで囲みます。
ON_COMMAND
などの他のマクロは、メッセージ マップの内容を入力します。
注
メッセージ マップ マクロの後にセミコロンは付いていません。
クラスの追加ウィザードを使用して新しいクラスを作成すると、クラスのメッセージ マップが提供されます。 または、ソース コード エディターを使用してメッセージ マップを手動で作成することもできます。