ON_UPDATE_COMMAND_UI マクロ
コマンド ターゲット オブジェクトのコマンド更新ハンドラーにユーザー インターフェイス オブジェクトを接続するには、[クラス ビュー] を開き、ハンドラーを追加するクラスを右クリックして、[クラス ウィザード] を選択します。 左側の一覧でユーザー インターフェイス オブジェクトの ID を探し、右側のペインで [UPDATE_COMMAND_UI] を選択して、[ハンドラーの追加] をクリックします。 これにより、クラスにハンドラー関数が作成され、メッセージ マップに適切なエントリが追加されます。 詳細については、「関数へのメッセージの割り当て」を参照してください。 [メッセージ] ペインで、処理する追加のメッセージを指定できます。
たとえば、プログラムの [編集] メニューの [すべてクリア] コマンドを更新するには、クラス ウィザードを使用して、選択したクラスにメッセージ マップ エントリを追加し、クラス宣言に OnUpdateEditClearAll
というコマンド更新ハンドラーの関数宣言を追加し、クラスの実装ファイルに空の関数テンプレートを追加します。 関数プロトタイプは、次のようになります。
afx_msg void OnUpdateEditClearAll(CCmdUI* pCmdUI);
すべてのハンドラーと同様に、関数宣言には afx_msg キーワードが示されています。 すべての更新ハンドラーと同様に、CCmdUI
オブジェクトへのポインターである 1 つの引数を受け取ります。