コマンド ルーティング クラス
ユーザーがメニューやコントロール バーのボタンをマウスで選択してアプリケーションを操作すると、そのユーザー インターフェイス オブジェクトから適切なコマンドターゲット オブジェクトにメッセージが送信されます。 CCmdTarget
から派生したコマンドターゲットのクラスには、CWinApp、CWnd、CDocTemplate、CDocument、CView のほか、そこから派生したクラスがあります。 アプリケーション内でアクティブになっている最適なオブジェクトがコマンドを処理できるよう、フレームワークは自動コマンド ルーティングをサポートしています。
コマンド ターゲットのコマンド UI 更新 (ON_UPDATE_COMMAND_UI) ハンドラーには、CCmdUI
クラスのオブジェクトが渡されます。開発者は、これによって特定のコマンドのユーザー インターフェイスの状態を更新 (メニュー項目のチェック ボックスをオンまたはオフにするなど) することができます。 UI オブジェクトの状態を更新するには、CCmdUI
オブジェクトのメンバー関数を呼び出します。 特定のコマンドに関連付けられている UI オブジェクトがメニュー項目であるか、ボタンであるか、またはその両方であるかに関係なく、このプロセスは共通です。
CCmdTarget
メッセージを受信してそれに応答する機能を備えたオブジェクトのすべてのクラスの基底クラスとなります。
Ccmdui
メニュー項目やコントロールバー ボタンなど、ユーザー インターフェイス オブジェクトを更新するためのプログラマティック インターフェイスを提供します。 このオブジェクトによって、コマンド ターゲット オブジェクトは、ユーザー インターフェイス オブジェクトを無効にしたり、チェック ボックスのオンとオフを切り替えたりすることができます。