- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章文档和视图结构
§1. MFC应用程序的四大对象 §2. 文档类和视图类 §3. 文档/视图类的程序设计 * * 第十一章 文档和视图结构 重点:程序的四大对象、文档类、视图类。 难点:文档/视图类的成员函数 一. MFC应用程序的四大对象 1.应用程序对象-- 由MFC AppWizard生成的处理WinMain( ),消 息循环等APP程序框架的封装。 2.主框架窗口对象-- 对窗口(包括标题栏、菜单栏、状态栏 及用户区)管理的程序的封装。应用程序框 架通过主框架窗口利用消息与文档/视图进 行交互操作。 主框架窗口对象访问文档时调用 GetActiveDoucment()方法。 主框架窗口对象访问视图时调用 GetActiveView()方法。 3.文档对象-- 对程序数据(类对象、变量等)管理的程序的封 装。 4.视图对象-- 对数据进行界面编辑、显示操作的程序的封装。 (主要占据窗口的客户区) 二.文档和视图的关系 一个视图对象关联一个文档对象(如写字板现象),一个文档对象(一批数据的集合)可以关联多个视图(如WORD现象)。 视图获取文档数据的方法:调用 Cview::GetDoucment() 文档访问视图的方法: 调用 CDoucment::UpdateAllViews() 一. 文档类及方法 1.文档类在MFC类库中的层次 2.文档类的方法 见P210 表11-1 3.构造用户文档的方法 a.使用工程中的文档类派生。 b.给该派生类添加成员变量,且可使用MFC的集合类CString, CRect,CPint,CSize,CTime等数据类型来定义变量。 c.在Serialize( )框架方法中实现数据的串行化。 二. 视图类及方法 1.视图类在MFC类库中的层次 2.视图类的方法 见P212 表11-3 CObject CCmdTanget CDocument CObject CCmdTanget CWnd CView 其中:OnDraw( )—在屏幕内容发生变化时重绘窗口用户区。 3.视图类的派生类 MFC提供了丰富的视图处理功能,将他们封装在多个派生类中。 如: CScrollView类--实现视图的滚动显示。 CEditView类—实现数据的输入、编辑。 总结: 文档类和视图类为程序指明了具体的操作对象。 文档类和视图类的方法为用户编程提供了有效手段, 要想编制出更好的程序,必须深入学习类的方法。 一. 单文档结构程序设计 例11.1 设计下图所示程序(注意文档与视图的操作‘部位’)。
文档评论(0)