网站大量收购独家精品文档,联系QQ:2885784924

vc++6.0电子版第10章.ppt

  1. 1、本文档共86页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
vc6.0电子版第10章

第10章 多文档界面应用程序 10.1 多文档界面应用程序的特点 10.2 创建一个MDI的应用程序框架 10.3 MDI应用程序框架结构 10.4 模板、文档和视图 10.5 了解多文档应用程序的内幕 10.6 完善程序的功能 10.7 另一种流行的视图结构—切分窗口 10.8 小结 习题 多文档界面(MDI)应用程序是另一类重要的文档/视图结构程序。它具有窗口嵌套风格,有一个可包含一个或多个子窗口的框架窗口。许多流行的软件,如Word和Excel都使用这种风格的框架结构。 10.1 多文档界面应用程序的特点 在多文档应用程序中,用户可以同时打开多个文档,每个文档对应不同的窗口。在没有任何活动的MDI子窗口时,MDI框架窗口可以拥有自己的默认菜单; 当有活动子窗口时,MDI框架窗口的菜单条会自动被子窗口的菜单所代替; 框架会自动监视当前活动的子窗口类型,并相应地更新主窗口的菜单; 可以对子窗口进行层叠、平铺等各种操作; 子窗口可以在MDI主窗口区域内定位、改变大小、最大化和最小化,当最大化子窗口时,它将占满MDI主窗口的全部客户区。 10.2 创建一个MDI的应用程序框架 例10.1 创建一个基于MDI的应用程序,掌握MDI应用程序的文档/视图结构。 首先创建这个应用程序的框架,遵循以下步骤利用AppWizard创建程序框架。 (1) 选择File→New菜单命令,选中Project选项卡中的MFC AppWizard(exe)项目,将项目名取为“excurve”,单击OK按钮。 (2) 在第一步的对话框中,保持所有默认设置,单击Next按钮进入下一步。 (3) 在第二步中,保持默认设置,单击Next按钮进入下一步。 (4) 在第三步中,取消对ActiveX Controls的核选,单击Next按钮进入下一步。 (5) 在第四步中,取消对Printing and print preview的核选,此时,如果单击Adanced按钮,会弹出如图10.1所示的对话框,可以进行有关应用程序支持的文件及文件扩展名的设置,还可以设置框架和视图窗口的状态,如图10.2所示,其他保持默认设置,单击Next按钮进入下一步。 图10.1 设置应用程序支持的文件的扩展名 图10.2 设置框架和视图在程序开始运行时的状态 (6) 在第五步,保持所有的默认设置,单击Next按钮进入下一步。 (7) 可以看到系统即将创建的所有类,此时,可以修改要生成的类的基类,本例不修改这些内容,单击Finish按钮,完成框架的构建,系统将弹出一个对话框以显示所构建应用程序的特性。 不难发现,这些过程与创建单文档界面应用程序的框架有着许多相似之处。的确,单文档界面应用程序与多文档应用程序有许多相通之处。与创建单文档应用程序一样,接下来,对系统所生成的框架代码进行一次浏览。 系统共生成了六个类。下面列出系统所生成的所有的类: 类CExcurveApp,由类CWinApp派生。 类CExcurveDoc,由类CDocument派生。 类CExcurveView,由类CView派生。 类CMainFrame,由类CMDIFrameWnd派生。 类CChildFrame,由类CMDIChildWnd派生。 类CAboutDlg,由类CDialog派生。 比较发现,在多文档应用程序中是用类CMainFrame和类CChildFrame替代了单文档应用程序中由类CFrameWnd派生的类CMainFrame。这一点具有重要的意义,它使得在基于多文档界面的应用程序中,可以同时打开多个文档、多个视图,同时也造成其文档/视图结构的变化。 10.3 MDI应用程序框架结构 从程序员角度看,每个MDI应用程序必须有一个CMDIFrameWnd或其派生类的实例(如本例中的类CMainFrame),这个窗口称作MDI框架窗口。类CMDIFrameWnd是类CFrameWnd的派生类,因此具有CFrameWnd框架窗口类的全部特性。但是,主框架窗口不直接与一个文档和视图相关联,这与单文档界面的应用程序不同。MDI框架窗口拥有MDIClient(MDI客户窗口),在显示或隐藏工具条和状态栏等时,需要重新定位该子窗口。 MDI子窗口是CMDIChildWnd或其派生类的实例,类CMDIChildWnd也是由CFrameWnd派生。它的主要功用在于容纳视图和文档,因此在功能上,它相当于单文档界面应用程序中的主框架窗口。每打开一个文档,框架就自动为文档创建一个MDI子窗口。一个MDI应用程序负责动态地创建和删除MDI子窗口。在任何时刻,最多只有一个子窗口处于激活状态,其窗口标题栏高亮显示,以区别其他窗口。MDI框架窗

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档