Share via


ウィンドウ クラスの派生

CWndからペインを直接作成するか、 CWndから新しいウィンドウ クラスを派生します。これは、通常、独自のカスタム ペインを作成する方法です。ただし、フレームワーク プログラムで使用されるほとんどのウィンドウは CWndの 1 つが、MFC に用意されているクラスから派生フレームウィンドウ代わりに作成されます。

フレーム ウィンドウ クラス

  • CFrameWnd
    シングル ドキュメントとビューを構築する SDI フレーム ウィンドウに使用されます。フレーム ウィンドウは、アプリケーションのメイン フレーム ウィンドウ、現在のドキュメントのフレーム ウィンドウの両方です。

  • CMDIFrameWnd
    MDI アプリケーションのメイン フレーム ウィンドウとして使用されます。メイン フレーム ウィンドウは、すべての MDI ドキュメント ウィンドウのコンテナーで、ファイルにメニュー バーを共有します。MDI フレーム ウィンドウはデスクトップに表示される最上位ウィンドウです。

  • CMDIChildWnd
    MDI メイン フレーム ウィンドウで開く個々のドキュメントに使用されます。各ドキュメントとビューは MDI メイン フレーム ウィンドウに含まれている MDI 子フレーム ウィンドウによって作成されます。一般的なフレーム ウィンドウと同様に、 MDI 子ウィンドウの外観は、 MDI フレーム ウィンドウ内でデスクトップ上にある代わりにが含まれています。ただし、 MDI 子ウィンドウは、独自のメニュー バーがないことと、それを含む MDI フレーム ウィンドウのメニュー バーを共有する必要があります。

    詳細については、 フレーム ウィンドウを参照してください。

CWnd から派生する他のウィンドウ クラス

フレーム ウィンドウに加えて、ペインの他のいくつかの主要カテゴリは CWndから派生します:

  • [ビュー]
    ビューは CWnd派生クラスの派生クラス CView 作成されます (または 1)を使用する。ビューはドキュメントにアタッチされ、ドキュメントとユーザーの仲立ち手段として機能します。ビューは、その子ウィンドウ (ない MDI の子)通常、塗りつぶします SDI フレーム ウィンドウのクライアント領域) MDI 子フレーム ウィンドウ (またはツールバーやステータス バーには含まれずクライアント領域のその部分)。

  • ダイアログ ボックス
    ダイアログ ボックスは CWnd派生クラス CDialogを使用して作成されます。

  • フォーム
    ダイアログ テンプレート リソース (ダイアログ ボックスなどのフォーム ベースのビューは、クラス CFormViewCRecordView、または CDaoRecordViewを使用して作成されます。

  • コントロール
    ボタン、リスト ボックス、コンボ ボックスなどのコントロールは CWndから派生する他のクラスを使用して作成されます。トピックを制御します。を参照してください。

  • コントロール バー
    コントロールを含む子ウィンドウ。例では、ツールバーとステータス バーが含まれます。コントロール バーを参照してください。

ウィンドウ クラス階層

MFC の参照MFC の階層図 を参照してください。ビューは ドキュメント/ビュー アーキテクチャに示します。ダイアログ ボックスは ダイアログ ボックスに示します。

作成したオブジェクト ペイン クラスを作成するには

クラス ライブラリに用意されているウィンドウ クラスに適用されたオブジェクトの子ウィンドウが必要な場合があります。このようなウィンドウを作成し、派生クラスを独自に作成し、子ウィンドウをゾーンまたはビューにします。フレームワークがドキュメント フレーム ウィンドウのクライアント領域のエクステントを管理することを忘れないでままにします。クライアント領域のほとんどは、ビューによって管理されますが、コントロール バーなどの他のウィンドウは、ビューまたはカスタム ウィンドウを作成するには、領域を共有する場合があります。フレーム ウィンドウのクライアント領域の子ウィンドウを配置するためのクラス CViewCControlBar の機能と対話する必要があります。

管理するペインとウィンドウの作成 はウィンドウ オブジェクトの作成について説明します。

参照

概念

ウィンドウ オブジェクト