メッセージの種類
どのようなメッセージのハンドラーを記述します。 3 種類の主要カテゴリがあります:
Windows メッセージ
これは WM_COMMANDを除く WM_ プレフィックスでは主にメッセージが含まれます。 Windows メッセージは、ウィンドウとビューによって処理されます。 これらのメッセージは、メッセージを処理する方法を決めるで使用されるパラメーターがあります。
コントロールの通知
これは、コントロールおよびそのほかの子ウィンドウの親ウィンドウに WM_COMMAND 通知メッセージが含まれています。 たとえば、エディット コントロールは、ユーザーがエディット コントロールのテキストを変更する可能性があるアクションをとったら親に WM_COMMAND を含むメッセージを EN_CHANGE コントロール通知コード送信します。 メッセージのウィンドウのハンドラーでは、コントロールのテキストの取得などの適切な方法で、通知メッセージに応答します。
フレームワークは WM_ 他のメッセージなどのコントロール通知メッセージをルーティングします。 ただし、次の 1 種類の例外は、ユーザーがクリックしたボタンから送信された BN_CLICKED コントロール通知メッセージです。 このメッセージは、コマンド メッセージとして特に処理され、他のコマンドのようにルーティングされます。
コマンド メッセージ
これにより、ユーザー インターフェイス オブジェクトの WM_COMMAND 通知メッセージがあります: メニュー、ツール バー ボタンとアクセラレータ キー。 フレームワークは、コマンドを他のメッセージとは異なる方法で処理し、コマンドの対象"で説明しているように複数の型のオブジェクトによって、処理することができます。
カテゴリ 1 および 2 のメッセージは、ウィンドウによって— Windows メッセージとコントロール通知—処理されます: クラス CWndから派生されるクラス オブジェクト。 これは、CFrameWndCMDIFrameWnd、CMDIChildWnd、CView、CDialog、これらの基本クラスから派生される独自のクラスが含まれています。 このようなオブジェクトは HWNDウィンドウへのハンドルをカプセル化します。
カテゴリ 3 のメッセージがオブジェクトのさまざまなコマンドで— —処理することができますが、T: ウィンドウとビューに適用するドキュメント、ドキュメント テンプレートとアプリケーション オブジェクト自体。 コマンドでは、特定のオブジェクトに影響を与える場合、その意味を。オブジェクトのハンドル コマンド便利です。 たとえば、ファイル メニューの開くコマンドはアプリケーションとともに論理的に関連付けられています。: アプリケーションは、コマンドを受信したときに指定したドキュメントを開きます。 したがって、開くコマンドのハンドラーは、アプリケーション クラスのメンバー関数です。 コマンドの詳細については、オブジェクトにルーティングされるか、フレームワークがハンドラーに問い合わせる場合を参照すれば。