フォーム ベースの MFC アプリケーションの作成
更新 : 2007 年 11 月
フォームとは、ユーザーがデータのアクセスや変更に使用できる、コントロール付きのダイアログ ボックスです。フォームをユーザーが選択できるアプリケーションを開発することもできます。通常、フォーム ベースのアプリケーションでは、ユーザーは [ファイル] メニューの [新規作成] をクリックしてフォームにアクセスします。ダイアログ ベースのアプリケーションは、[ファイル] メニューに [新規作成] オプションがありませんが、フォーム ベースのアプリケーションと見なされます。
シングル ドキュメント インターフェイス (SDI: Single Document Interface) のフォーム ベースのアプリケーションでは、一度に実行できるフォームのインスタンスは 1 つだけです。[ファイル] メニューの [新規作成] で新規フォームを選択すると、SDI フォーム ベースのアプリケーションのさまざまなフォームを同時に実行できます。
マルチ ドキュメント インターフェイス (MDI: Multiple Document Interface) のフォーム ベースのアプリケーションを作成すると、同一フォームの複数のインスタンスをアプリケーションでサポートできます。
マルチ トップレベル ドキュメントをサポートするアプリケーションを作成すると、デスクトップがそのドキュメントの暗黙の親となり、ドキュメントのフレームがアプリケーションのクライアント領域に限定されることはありません。ドキュメントの複数のインスタンスを開くことができます。各インスタンスにはフレーム、メニュー、タスク バー アイコンが含まれます。ドキュメントの 2 番目以降のインスタンスは個別に閉じることができますが、最初のインスタンスの [ファイル] メニューの [アプリケーションの終了] を選択すると、すべてのインスタンスがアプリケーションによって閉じられます。
SDI、MDI、およびマルチ トップレベル ドキュメント アプリケーションはすべてフォーム ベースであり、ドキュメント/ビュー アーキテクチャを使用します。
定義上は、ダイアログ ベースのアプリケーションもすべてフォーム ベースになります。ダイアログ ベースのアプリケーションでは、ドキュメント/ビュー アーキテクチャが使用されないため、独自の追加フォームの作成およびそのアクセス方法は自分で管理する必要があります。
フォーム ベースのアプリケーションの基本クラスは CFormView です。アプリケーションでデータベースをサポートする場合は、CFormView の任意の派生クラスも選択できます。フォームとは、CFormView から派生するウィンドウ、または CFormView から継承されたクラスから派生するウィンドウです。
CView などの基本クラスを使用する場合でも、後で CFormView から派生した MFC クラスを追加し、MFC クラス ウィザードの [ドキュメント テンプレート リソースの生成] チェック ボックスをオンにすることによって、アプリケーションをフォーム ベースに変更できます。
ウィザードを終了するとプロジェクトが開きます。基本クラスとして CFormView (または CFormView から継承されたクラス) を選択した場合、あるいはダイアログ ベースのアプリケーションを作成した場合は、Visual C++ によってダイアログ エディタが開かれます。これで最初のフォームをデザインする準備が整いました。
フォーム ベースの MFC アプリケーションの作成を開始するには
「MFC アプリケーションの作成」の手順に従って操作します。
MFC アプリケーション ウィザードの [アプリケーションの種類] ページの [ドキュメント ビュー アーキテクチャ サポート] チェック ボックスをオンにします。
[シングル ドキュメント]、[マルチ ドキュメント]、または [複数のトップレベル ドキュメント] を選択します。
メモ : 既定では、SDI、MDI、またはマルチ トップレベル ドキュメント インターフェイス アプリケーションを選択すると、ウィザードの [生成されたクラス] ページで CView がアプリケーションのビューの基本クラスとして設定されます。フォーム ベースのアプリケーションを作成するには、アプリケーションのビューの基本クラスとして CFormView を選択する必要があります。ウィザードは、フォーム ベースのアプリケーションの印刷はサポートしていません。
ウィザードのその他のページで、必要なプロジェクト オプションを設定します。
[完了] をクリックして、スケルトン アプリケーションを作成します。
詳細については、次のトピックを参照してください。
参照
処理手順
Windows エクスプローラ形式の MFC アプリケーションの作成