次の方法で共有


MFC アプリケーション アーキテクチャ クラス

更新 : 2007 年 11 月

このカテゴリのクラスは、フレームワーク アプリケーションのアーキテクチャに追加されます。これらのクラスは、ほとんどのアプリケーションに共通する機能を提供します。フレームワークにアプリケーション特有の機能を追加します。通常、アーキテクチャ クラスから新しいクラスを派生させ、新しいメンバを追加したり既存のメンバ関数をオーバーライドしたりして、機能を追加します。

アプリケーション ウィザードでは、数種類のアプリケーションが生成されます。生成されたアプリケーションはすべて、種類ごとに異なる方法でアプリケーション フレームワークを使用します。SDI (シングル ドキュメント インターフェイス) と MDI (マルチ ドキュメント インターフェイス) アプリケーションは、ドキュメント/ビュー アーキテクチャと呼ばれるフレームワークの全部を使用します。ダイアログ ベースのアプリケーション、フォーム ベースのアプリケーション、および DLL のような、ほかの種類のアプリケーションは、ドキュメント/ビュー アーキテクチャ機能の一部だけを使用します。

ドキュメント/ビュー アプリケーションには、ドキュメント、ビュー、およびフレーム ウィンドウの 1 つ以上の組があります。ドキュメント-テンプレート オブジェクトはそれぞれのドキュメント、ビュー、およびフレームのクラスの組を関連付けます。

MFC アプリケーションでドキュメント/ビュー アーキテクチャを使わなくてもかまいませんが、使用することによって多くの利点があります。MFC の OLE コンテナとサーバー サポートは、ドキュメント/ビュー アーキテクチャを基にしており、印刷や印刷プレビューもサポートしています。

すべての MFC アプリケーションは少なくとも 2 つのオブジェクトを持ちます。CWinApp から派生されるアプリケーション オブジェクトと、CWnd から (通常、間接的に) 派生される、ある種のメイン ウィンドウ オブジェクトです。ほとんどの場合、メイン ウィンドウは、CFrameWndCMDIFrameWnd、または CDialog から派生されます。これらはすべて CWnd から派生されています。

ドキュメント/ビュー アーキテクチャを使用するアプリケーションには、特別なオブジェクトが含まれています。主なオブジェクトは次のとおりです。

  • 前述した、CWinApp クラスから派生されたアプリケーション オブジェクト。

  • CDocument クラスから派生された 1 つ以上のドキュメント クラス オブジェクト。ドキュメント クラス オブジェクトは、ビューで操作されるデータの内部表現に対応しています。データ ファイルと関連付けられることがあります。

  • CView クラスから派生された 1 つ以上のビュー オブジェクト。各ビューはドキュメントに結び付けられたウィンドウであり、フレーム ウィンドウに関連付けられます。ビューはドキュメント クラス オブジェクトに保持されているデータを表示し、操作します。

ドキュメント/ビュー アプリケーションは CFrameWnd から派生したフレーム ウィンドウと、CDocTemplate から派生したドキュメント テンプレートも持ちます。

参照

概念

クラス ライブラリの概要