子ウィンドウなどの独自のウィンドウを作成する場合、フレームワークは ドキュメント/ビューの作成で説明されているプロセスとほぼ同じプロセスを使用します。
MFC によって提供されるすべてのウィンドウ クラスは 、2 段階の構築を採用しています。 つまり、C++ new
演算子の呼び出し中に、コンストラクターは C++ オブジェクトを割り当てて初期化しますが、対応する Windows ウィンドウは作成しません。 これは後で、ウィンドウ オブジェクトの Create メンバー関数を呼び出すことによって行われます。
Create
メンバー関数は、Windows ウィンドウを作成し、そのHWND
を C++ オブジェクトのパブリック データ メンバー m_hWndに格納します。
Create
は、作成パラメーターに対する完全な柔軟性を提供します。
Create
を呼び出す前に、フレームのアイコンとクラス スタイルを設定するために、ウィンドウ クラスをグローバル関数 AfxRegisterWndClass に登録することができます。
フレーム ウィンドウでは、の代わりに Create
メンバー関数を使用できます。
LoadFrame
では、Windows ウィンドウで使用されるパラメーターが少なくなります。 フレームのキャプション、アイコン、アクセラレータ テーブル、メニューなど、リソースから多くの既定値を取得します。
注
アイコン、アクセラレータ テーブル、メニュー リソースは、LoadFrame によって読み込まれるには、 IDR_MAINFRAMEなどの共通リソース ID を持っている必要があります。