1 / 58
文档名称:

MFC框架窗口界面设计.ppt.ppt

格式:ppt   页数:58页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

MFC框架窗口界面设计.ppt.ppt

上传人:xinsheng2008 2016/6/1 文件大小:0 KB

下载得到文件列表

MFC框架窗口界面设计.ppt.ppt

文档介绍

文档介绍:MFC 框架窗口界面设计 1框架窗口 2菜单 3工具栏 4状态栏 5交互对象的动态更新 6图标和光标 1框架窗口 单文档和多文档程序框架窗口?文档应用程序的 MFC 类结构如图是单文档应用程序 Ex_SDI 和多文档应用程序 Ex_MDI 的 MFC 类结构。 CAboutDlg 是每一个应用程序框架都有的,用来显示本程序的有关信息。 CEx_SDIApp 和CEx_MDIApp 是应用程序类,是从 CWinApp 类派生而来,负责应用程序创建、运行和终止,每一个应用程序都需要这样的类。 CEx_SDIDoc 和CEx_MDIDoc 是文档类,它们是从 CDocument 类派生而来,负责应用程序文档数据管理。 CEx_SDIView 和CEx_MDIView 是视图类,它们既可以从基类 CView 派生,也可以从CView 派生类派生,负责数据的显示、绘制和其他用户交互。 CMainFrame 类是用来负责主框架窗口的显示和管理,包括工具栏和状态栏等界面元素的初始化。对于单文档应用程序来说,主框架窗口类是从 CFrameWnd 派生而来的,而对于多文档应用程序程序,主框架窗口是从 CMDIFrameWnd 派生的。 hildFrame 类是从 CMDIChildWnd 派生而来,专门用来管理多文档应用程序中的文档窗口。无论是 CMDIChildWnd 还是 CMDIFrameWnd 类,它们都是从 CFrameWnd 派生而来的。对于基于对话框的应用程序,一般有 CAboutDlg 类、应用程序类和对话框类。上述 MFC 类之间的继承和派生关系如图 2所示。图 2 MFC mdTarget CWnd CDocument CFrameWnd CObject CWinTread CWinApp CView CDialog 及控件 CMDIChildWnd CMDIFrameWnd CMiniFrameWnd 1框架窗口?项目的文件组织项目中源文件都是采用文件夹的方式进行管理的,将项目名作为文件夹名,此文件夹下包含源程序代码文件、项目文件以及项目工作区文件等。每一个类的源代码均保存同名的h和cpp 文件。其他一些文件类型的含义: .opt 关于开发环境的参数文件,(AppStudio File) 资源辅助文件, (DeveloperStudio Project) (Microsoft DevStudio Project) (Pre -Compiled File) 预编译文件,可以加快编译速度,(Program Database) (pile browser) ?还有相应的 Debug( 调试)、 Res (资源) 等子文件夹。用应用程序向导创建项目时,系统自动为项目创建 Win32 Debug 版本的运行程序,并使用相应的默认配置。程序编连后,用于该项目的可执行文件以及其他调试的信息文件都安放在 Debug 文件夹中。?程序项目有一个 Win32 Release 版本,与 Release 的区别在于: Debug 版本的运行程序有相应的调试信息码, Release 版本的运行程序没有,但 Release 版本的运行程序经过代码的优化,其程序的运行效率被最大提升。?选择“编译”?“配置”菜单命令,在“配置”对话框将项目设置成 Win32 Release 版本。 1框架窗口?主框架窗口和文档窗口?主框架窗口是直接放置在桌面(DeskTop ) 上的那个窗口,每个应用程序只能有一个主框架窗口。主框架窗口负责管理各个用户交互对象并根据用户操作相应地创建或更新文档窗口及其视图。?文档窗口对 SDI 程序来说,和主框架窗口是一致的,主框架窗口就是文档窗口;对于 MDI 程序,文档窗口是主框架窗口的子窗口,如图。?文档窗口一般都有相应的可见边框,它的客户区( 除了窗口标题栏、边框外的区域)是由相应的视图来构成的,因此可以说视图是文档窗口内的子窗口。文档窗口时刻跟踪当前处于活动状态的视图的变化,并将用户或系统产生的消息传递给当前活动视图。 1框架窗口 窗口状态的改变 MFC AppWizard 为每个窗口设置了相应的大小和位置。运行程序时,会自动调用框架内部的 WinMain 函数,并自动查找该应用程序类的全局变量 theApp ,然后自动调用用户应用程序类的虚函数 InitInstance , 该函数会进一步调用相应的函数来完成主窗口的构造和