CMDIChildWnd

CMDIChildWndクラスは複数ドキュメント インターフェイス (MDI) 子ウィンドウ、ウィンドウを管理するためのメンバーと共に、Windows の機能を提供します。

MDI 子ウィンドウは典型的なフレーム ウィンドウのように見えますが、デスクトップ上ではなく、MDI フレーム ウィンドウ内の MDI 子ウィンドウが表示されます。MDI 子ウィンドウは、独自のメニュー バーはありませんが、代わりに MDI フレーム ウィンドウのメニューを共有します。フレームワークは自動的に、現在アクティブな MDI 子ウィンドウを表す MDI フレーム メニューを変更します。

役に立つの MDI 子ウィンドウをアプリケーションを作成するには、 CMDIChildWndからクラスを派生します。アプリケーションに固有のデータを格納する、派生クラスにメンバー変数を追加します。メッセージをウィンドウに指示された場合に何が起こるかを指定するには、派生クラスで実装するメッセージ ハンドラー メンバー関数とメッセージをマップします。

MDI 子ウィンドウを作成するには、3 つの方法があります。:

作成またはLoadFrameを呼び出す前に、C++ のnew演算子を使用して、ヒープ上のフレーム ウィンドウ オブジェクトを作成する必要があります。作成を呼び出す前に、ウィンドウ クラス、アイコンとクラス フレームのスタイルを設定するには、 AfxRegisterWndClassグローバル関数を登録することもできます。

Createメンバー関数を使用して、フレームの作成パラメーターを即時の引数として渡す。

LoadFrame 作成より少ない引数を必要とし、フレームのキャプション、アイコン、アクセラレータ テーブル、メニューなどのリソースからの代わりにその既定値のほとんどを取得します。LoadFrameでアクセスできるようにするには、これらのすべてのリソースは、同じリソース ID (たとえば、 IDR_MAINFRAME) が必要。

CMDIChildWndオブジェクトがビューやドキュメントが、直接、フレームワークの代わりに、プログラマが直接作成しないされます。CDocTemplateオブジェクトは、フレームの作成を含むビューの作成と接続の適切なドキュメントとビューを調整します。CDocTemplateコンス トラクターのパラメーターは、 CRuntimeClass関係の 3 つのクラスの (ドキュメント、フレーム、および表示) を指定します。CRuntimeClassオブジェクト フレームワークによって、ユーザーが (たとえば、ファイルを新しいコマンドまたは MDI ウィンドウ新しいコマンドを使用して) 指定したときの新しいフレームを動的に作成されます。

上記RUNTIME_CLASS機構が正しく動作するためにDECLARE_DYNCREATECMDIChildWndから派生したフレーム ウィンドウ クラスを宣言する必要があります。

CMDIChildWndクラスの既定の実装の多くはCFrameWndから継承します。これらの機能の詳細な一覧については、 CFrameWndクラスの説明を参照してください。CMDIChildWndクラス、次の追加機能を備えてをいます:

フレーム ウィンドウを破棄するには、C++ 演算子の削除を使用しません。CWnd::DestroyWindowをの代わりに使用します。ウィンドウが破棄されると、cframewnd PostNcDestroyC++ オブジェクトが削除されます。ユーザーのフレーム ウィンドウを閉じる場合は、 OnCloseデフォルトハンドラー DestroyWindow を呼び出します。

CMDIChildWndの詳細についてを参照してください Visual の C++ プログラマのガイドフレーム ウィンドウについてのトピック

#include lt;afxwin.h>

クラス メンバーの |nbsp;基本クラス|階層図(&N)

サンプル特価; MFC Sample MDI | MFC サンプル MDIBIND | MFC サンプル MDIDOCVW | MFC サンプル SNAPVW(&N)

参照特価;CWndCMDIFrameWnd(&N)

Index