MFC アプリケーション アーキテクチャ クラス
このカテゴリの Microsoft Foundation Class ライブラリ (MFC) クラスは、MFC アプリケーションのアーキテクチャに貢献します。 これらは、ほとんどのアプリケーションに共通の機能を提供します。 アプリケーション固有の機能を追加するには、フレームワークに入力します。 これを行うには、通常は、アーキテクチャ クラスから新しいクラスを派生させてから、新しいメンバーを追加するか、既存のメンバー関数をオーバーライドします。
アプリケーション ウィザードを使用すると、アプリケーション フレームワークがそれぞれ異なる方法で使用された複数の種類のアプリケーションを生成できます。 SDI (シングル ドキュメント インターフェイス) および MDI (マルチ ドキュメント インターフェイス) アプリケーションは、フレームワークのドキュメントおよびビュー部分を最大限に活用します。 他の種類のアプリケーション (ダイアログベースのアプリケーション、フォームベースのアプリケーション、DLL など) は、ドキュメントおよびビュー アーキテクチャ機能の一部のみを使用します。
ドキュメントおよびビュー アプリケーションには、ドキュメント、ビュー、およびフレーム ウィンドウのセットが 1 つ以上含まれます。 ドキュメント テンプレート オブジェクトは、ドキュメント、ビュー、およびフレームの各セットのクラスを関連付けます。
MFC アプリケーションでドキュメントおよびビュー アーキテクチャを使用する必要はありませんが、使用することには多くの利点があります。 MFC OLE コンテナーとサーバーのサポートは、印刷と印刷プレビューのサポートと同様に、ドキュメントおよびビュー アーキテクチャに基づいています。
すべての MFC アプリケーションには、少なくとも、CWinApp
から派生したアプリケーション オブジェクトと、CWnd
から (多くの場合間接的に) 派生したある種のメイン ウィンドウ オブジェクトの 2 つのオブジェクトがあります (ほとんどの場合、メイン ウィンドウは CFrameWnd
、CMDIFrameWnd
、または CDialog
から派生します。これらはすべて CWnd
から派生します)。
ドキュメントおよびビュー アーキテクチャを使用するアプリケーションには、追加のオブジェクトが含まれます。 主なオブジェクトは次のとおりです。
- 前述のとおり、クラス
CWinApp
から派生したアプリケーション オブジェクト。 - クラス
CDocument
から派生した 1 つ以上のドキュメント クラス オブジェクト。 ドキュメント クラス オブジェクトは、ビュー内で操作されるデータの内部表現を担当します。 これらはデータ ファイルに関連付けられている場合があります。 CView
クラスから派生した 1 つ以上のビュー オブジェクト。 各ビューは、ドキュメントにアタッチされ、フレーム ウィンドウに関連付けられているウィンドウです。 ビューでは、ドキュメント クラス オブジェクトに含まれるデータが表示および操作されます。
ドキュメントおよびビュー アプリケーションには、(CFrameWnd
から派生した) フレーム ウィンドウと (CDocTemplate
から派生した) ドキュメント テンプレートも含まれます。