第5讲文档视图结构资料.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual C++程序设计 杨琦 计算机教学实验中心 西安交通大学 授 课 内 容 5.1文档/视图概念 5.2应用程序类和文档模板类 5.3 框架类 5.4 视图类 5.5 文档类 5.6 文档/视图结构中各类对象之间的协作关系 5.7 序列化 5.8 多文档应用程序 5.9 其他视图类 5.10 典型案例 知识点 CWinApp CDocTemplate CMainFrame CView CDocument CArchive CScrollView CEditView 5.1文档/视图概念 5.1文档/视图概念 5.1文档/视图概念 在框架窗口结构中,文档/视图功能均在框架类中 功能细化 文档可视为一个应用程序的数据元素的集合 视图是数据的用户界面, 通过窗口显示 通过打印机打印 提供用户与文档中数据的交互功能 文档/视图关系 5.2应用程序类(CWinApp) MFC类库提供的全局函数 CDocTemplate提供的成员函数 单文档界面程序使用文档模板类 CSingleDocTemplate* pDocTemplate; pDocTemplate = new CSingleDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CMyDoc), RUNTIME_CLASS(CMainFrame), RUNTIME_CLASS(CMyView)); 5.3 框架类CFrameWnd 5.4 视图类CView CView类成员函数 5.5 文档类CDocument CDocument类成员函数 例5-1 彩色泡泡程序 5.6 文档/视图结构中各类对象之间的协作关系 实例:文档/视图结构中各类对象 CFrameWnd *pFrame=(CFrameWnd *) AfxGetApp()-m_pMainWnd; CDocument *pDoc=pFrame- GetActiveDocument(); CView *pView=pFrame-GetActiveView(); 5.7 序列化__CArchive 5.7 序列化 例5-2 彩色泡泡程序数据的保存 void CMyDoc::Serialize(CArchive ar) { if(ar.IsStoring()) { ar m_nBubbleCount; for(int i=0; im_nBubbleCount; i++) { ar m_rectBubble[i]; ar m_colorBubble[i]; } } else …… } 5.8 多文档应用程序 例5-3 使用多文档模板编写彩色泡泡程序。 解题步骤: (1)用MFC生成一个MDI应用程序框架(取工程名为My),程序均采用默认设置。 (2)将例5-1和例5-2的代码拷贝到程序中即可。 5.9.2 窗体视图 例5-4多窗体程序设计方法 5.9.3 文本编辑视图 例5-5 文本编辑器程序。该程序的功能与Windows的记事本程序类似,但是一个MDI程序 5.10 典型案例 * * 应用程序对象、文档模板、文档及视图的关系 Application Object Document Template Document Toolbar Status Bar View CFrameWnd 1、视图与文档类的功能 视图是框架窗口中的客户区域,是程序与用户的接口,MFC程序常在视图中设计数据的输入输出功能。 文档类则具有数据管理功能,通过它能够方便地实现磁盘文件的存取操作。 2、文档序列化 是指将程序数据保存在磁盘文件中,或从磁盘文件中读取数据到程序中。 读数据 送显 视图窗口 数据保存在视图成员变量中 视图对象 文档对象 数据保存在文档的成员变量中 由文档实现数据的提取和插入 存档对象 由视图实现文档数据更新 由视图实现数据更新 文件对象 筛选消息 PreTranslateMessage 当应用程序终止时重载该函数来做清理工作 ExitInstance 空闲时间处理 OnIdle 事件循环 Run 重载该函数来完成Windows实例初始化工作 InitInstance 向“最近打开的文件”菜单添加一个文件 AddToRecentFileList 添加一个文档模板到应用程序已有文档模板列表中 AddDocTemplate 写一个字符串到应用程序的.INI文件中的入口 WriteProfileString 写一个整数到应用程序的.INI文件中的入口 WriteProfileInt 从应用程序的.INI文件中的入口获取一个字符串 GetProfileString 从应用程序的.INI文件中的入口获取一

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档