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