次の方法で共有


OnCmdMsg ハンドラー

コマンドのルーティングを実現するために、各コマンド ターゲットは、シーケンス内の次のコマンド ターゲットの OnCmdMsg メンバー関数を呼び出します。 コマンド ターゲットは OnCmdMsg を使用して、コマンドを処理できるかどうかを判断し、それを処理できない場合は別のコマンド ターゲットにルーティングします。

各コマンド ターゲット クラスは、OnCmdMsg メンバー関数をオーバーライドできます。 オーバーライドを使用すると、各クラスが特定の次のターゲットにコマンドをルーティングできます。 たとえば、フレーム ウィンドウは、「標準のコマンド ルート」の表に示されているように、コマンドを常に現在の子ウィンドウまたはビューにルーティングします。

OnCmdMsg の既定の CCmdTarget 実装では、コマンド ターゲット クラスのメッセージ マップを使用し、標準メッセージが検索されるのと同じ方法で、受信するコマンド メッセージごとにハンドラー関数を検索します。 一致が見つかると、ハンドラーを呼び出します。 メッセージ マップ検索については、「フレームワークのメッセージ マップ検索方法」で説明されています。

関連項目

フレームワークがハンドラーを呼び出す方法