创建基于窗体的 MFC 应用程序
更新:2007 年 11 月
窗体是一个对话框,包含允许用户访问数据(可能还允许更改数据)的控件。可能需要开发一个用户可从窗体选项中进行选择的应用程序。通常,基于窗体的应用程序允许用户从“文件”菜单中单击 New 来访问窗体。基于对话框的应用程序不允许用户访问“文件”菜单中的 New 选项,它也被认为是基于窗体的应用程序。
单文档界面 (SDI) 基于窗体的应用程序一次只允许具体某个窗体的一个实例运行。通过从“文件”菜单的 New 选项中选择一个新窗体,可以同时从 SDI 基于窗体的应用程序中运行不同的窗体。
如果创建多文档界面 (MDI) 基于窗体的应用程序,该应用程序将能够支持同一窗体的多个实例。
如果创建具有多顶级文档支持的应用程序,则桌面是文档的隐式父级,而且文档的框架不局限为该应用程序的工作区。可以打开文档的多个实例,每个实例有自己的框架、菜单和任务栏图标。可以分别关闭后面的文档实例,但是如果从初始实例的“文件”菜单中选择 Exit 选项,应用程序将关闭所有实例。
SDI、MDI 和多顶级文档应用程序都基于窗体并且使用文档/视图结构。
根据定义,任何基于对话框的应用程序都基于窗体。基于对话框的应用程序不使用文档/视图结构,因此您必须为自己的附加窗体管理创建和访问方法。
基于窗体的应用程序的基类是 CFormView。如果应用程序具有数据库支持,则也可以选择任何从 CFormView导出的类。窗体是任何从 CFormView 导出或从继承自 CFormView 的任何类导出的窗口。
即使使用基类(如 CView),也可以在以后通过添加 MFC 类(从 CFormView 导出)并在 MFC 类向导中选中“生成 DocTemplate 资源”复选项,使应用程序基于窗体。
完成了向导后,项目打开,如果选择了CFormView(或从 CFormView 继承的类)作为基类或者如果创建了基于对话框的应用程序,Visual C++ 将打开对话框编辑器。这时,准备设计第一个窗体。
开始创建基于窗体的 MFC 可执行文件
按照创建 MFC 应用程序中的指导操作。
在 MFC 应用程序向导的应用程序类型页中,选择“文档/视图结构支持”复选框。
选择“单文档”、“多文档”或“多顶级文档”。
说明: 如果选择了 SDI、MDI 或多顶级文档界面应用程序,则默认情况下,CView 在向导的 生成的类 页中被设置成应用程序视图的基类。若要创建基于窗体的应用程序,必须选择 CFormView 作为应用程序视图的基类。注意向导对基于窗体的应用程序不提供打印支持。
在其他向导页中设置所需的任何其他项目选项。
单击“完成”生成主干应用程序。
有关更多信息,请参见: