ユーザー インターフェイス オブジェクトとコマンド ID
更新 : 2007 年 11 月
メニュー項目、ツール バー ボタン、およびアクセラレータ キーは、"ユーザー インターフェイス オブジェクト" と呼ばれ、コマンドを生成します。ユーザー インターフェイス オブジェクトは、それぞれ固有の ID を持っています。ユーザー インターフェイス オブジェクトとコマンドに同じ ID を与えると、オブジェクトとコマンドが関連付けられます。「メッセージ」で説明したように、コマンドは特別なメッセージとして実装されています。下の図「フレームワーク内のコマンド」は、フレームワークがコマンドを管理する方法を示しています。ユーザー インターフェイス オブジェクトが ID_EDIT_CLEAR_ALL などのコマンドを生成すると、アプリケーション内のオブジェクトの 1 つが下の図のようにコマンドを処理し、ドキュメント オブジェクトの OnEditClearAll 関数がドキュメントのメッセージ マップを通じて呼び出されます。
フレームワーク内のコマンド
下の図「フレームワーク内のコマンド更新」は、MFC がメニュー項目やツール バー ボタンなどのユーザー インターフェイス オブジェクトを更新する方法を示しています。メニューがドロップダウンする前、またはツール バー ボタンのアイドリング ループ中に、MFC は更新コマンドを送ります。この図では、ドキュメント オブジェクトは更新コマンド ハンドラ OnUpdateEditClearAll を呼び出して、ユーザー インターフェイス オブジェクトを更新可能または更新不能にします。
フレームワーク内のコマンド更新