MFC-ドキュメントビュー
ザ・ Document/View architectureは、Microsoft FoundationClassesライブラリに基づいてアプリケーションを作成するために使用される基盤です。これにより、ユーザーがアプリケーションの一部として表示するものや、ユーザーが作業するドキュメントなど、コンピュータープログラムを構成するさまざまな部分を区別できます。これは、アンサンブルとして機能する個別のクラスの組み合わせによって行われます。
ドキュメント/ビューアーキテクチャを構成する部分は、フレーム、1つ以上のドキュメント、およびビューです。まとめると、これらのエンティティは使用可能なアプリケーションを構成します。
見る
A viewユーザーが自分の仕事をするために取り組んでいるプラットフォームです。ユーザーがアプリケーションで何でもできるようにするには、CViewクラスに基づくオブジェクトであるビューを提供する必要があります。CViewから派生したクラスの1つを直接使用することも、CViewまたはその子クラスの1つから独自のカスタムクラスを派生させることもできます。
資料
A documentバケツに似ています。コンピュータアプリケーションの場合、ドキュメントはユーザーのデータを保持します。このアーキテクチャのドキュメント部分を作成するには、CDocumentクラスからオブジェクトを派生させる必要があります。
フレーム
名前が示すように、 frameは、アイテムの構成要素、構造、および境界線の組み合わせです。フレームは、ウィンドウに「物理的な」存在感を与えます。また、Windowsデスクトップに関するオブジェクトの場所も定義します。
シングルドキュメントインターフェイス(SDI)
表現 Single Document InterfaceまたはSDIは、ユーザーに1つのビューしか表示できないドキュメントを指します。これは、アプリケーションが一度に複数のドキュメントを表示できないことを意味します。現在のアプリケーションの別のタイプのドキュメントを表示する場合は、アプリケーションの別のインスタンスを作成する必要があります。メモ帳とワードパッドは、SDIアプリケーションの例です。
新しいMFCダイアログベースのアプリケーションを作成して、シングルドキュメントインターフェイスまたはSDIの簡単な例を見てみましょう。
Step 1 −新しいMFCアプリケーションを作成しましょう MFCSDIDemo 下記の設定で。

Step 2 −アプリケーションタイプから単一ドキュメントを選択し、プロジェクトスタイルからMFC標準を選択します。
Step 3 − [完了]をクリックして続行します。
Step 4 −プロジェクトが作成されたら、アプリケーションを実行すると、次の出力が表示されます。

マルチドキュメントインターフェイス(MDI)
アプリケーションは、 Multiple Document Interface、またはMDI(ユーザーがアプリケーションで複数のドキュメントを閉じずに開くことができる場合)。この機能を提供するために、アプリケーションは、コンピュータープログラムのメインフレームとして機能する親フレームを提供します。このフレーム内で、アプリケーションは個々のフレームでビューを作成し、各ビューを他のビューと区別することができます。
新しいMFCダイアログベースのアプリケーションを作成して、マルチドキュメントインターフェイスまたはMDIの簡単な例を見てみましょう。
Step 1 −新しいMFCアプリケーションを作成しましょう MFCMDIDemo 下記の設定で。

Step 2 −アプリケーションタイプから複数ドキュメントを選択し、プロジェクトスタイルからMFC標準を選択します。
Step 3 − [完了]をクリックして続行します。
Step 4 −プロジェクトが作成されたら、アプリケーションを実行すると、次の出力が表示されます。

Step 5 − [ファイル]→[新規]メニューオプションをクリックすると、次のスナップショットに示すように、別の子ウィンドウが作成されます。

Step 6−マルチドキュメントインターフェイス(MDI)アプリケーションでは、アプリケーションごとに1つのメインフレームがあります。この場合、CMDIFrameWndと、ドキュメントごとに1つのCMDIChildWnd派生子フレームがあります。