メッセージ マップの所在
アプリケーション ウィザードで新しいスケルトン アプリケーションを作成する場合は、アプリケーション ウィザードは、作成する各コマンドターゲット クラスのメッセージ マップを書き込みます。これにより、派生アプリケーション、ドキュメント、ビュー、およびフレームウィンドウ クラスが含まれています。これらのメッセージ マップの一部に既に特定のメッセージおよび定義済みコマンドのアプリケーション ウィザードで指定したエントリがあり、一部は、追加されたハンドラーのプレースホルダーだけです。
クラスのメッセージ マップは、クラスの .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()
メッセージ マップ マクロはのコレクションで構成されます。2 種類のマクロ、 BEGIN_MESSAGE_MAP と END_MESSAGE_MAPは、メッセージ マップをかっこで囲みます。他のマクロは、 ON_COMMANDなど、メッセージ マップの内容を入力します。
[!メモ]
メッセージマップのマクロはセミコロンが続きます。
新しいクラスを作成するには、追加のクラス ウィザードを使用すると、クラスにメッセージ マップを提供します。また、ソース・コード エディターを使用してメッセージ マップを手動で作成できます。