リフレクション メッセージ用のメッセージ ハンドラーの定義
新しい MFC コントロール クラスを作成したら、そのクラスのメッセージ ハンドラーを定義できます。 反映されたメッセージ ハンドラーを使用すると、親がメッセージを受信する前に、コントロール クラスが独自のメッセージを処理できます。 MFC CWnd::SendMessage 関数を使用して、コントロールから親ウィンドウにメッセージを送信できます。
この機能を使用すると、たとえば、親ウィンドウに依存せずに再描画するリスト ボックスを作成できます (所有者が描画)。 反映されたメッセージの詳細については、「 反映されたメッセージの処理」を参照してください。
同じ機能を持つ ActiveX コントロール を作成するには、ActiveX コントロールのプロジェクトを作成する必要があります。
Note
次に説明するように、クラス ウィザードを使用して ActiveX コントロールの反映されたメッセージ (OCM_Message) を追加することはできません。 これらのメッセージは手動で追加する必要があります。
クラス ウィザードから反映されたメッセージのメッセージ ハンドラーを定義するには
リスト、鉄筋コントロール、ツールバー、ツリー コントロールなどのコントロールを MFC プロジェクトに追加します。
クラス ビューで、コントロール クラスの名前をクリックします。
クラス ウィザードで、コントロール クラス名が Class Name リストに表示されます。
Messages タブをクリックして、コントロールに追加できる Windows メッセージを表示します。
ハンドラーを定義する対象の反映されたメッセージを選択します。 反映されたメッセージは等号 (=) でマークされます。
クラス ウィザードの右側の列のセルをクリックして、ハンドラーの推奨名を <add>HandlerName として表示します。 (たとえば、 =WM_CTLCOLOR メッセージ ハンドラーは、 <add>CtlColor) を提案します。
推奨される名前をクリックして受け入れます。 ハンドラーがプロジェクトに追加されます。
メッセージ ハンドラーを編集または削除するには、手順 4 から 7 を繰り返します。 編集または削除するハンドラー名を含むセルをクリックし、適切なタスクをクリックします。
関連項目
マップ (関数にメッセージを)
コード ウィザードを使用した機能の追加
クラスの追加
メンバー関数の追加
メンバー変数の追加
仮想関数のオーバーライド
MFC メッセージ ハンドラー
クラス各部へのジャンプ