[MFC]文档视图体系结构、单文档界面

本文详细介绍了MFC中的文档视图结构,包括文档、视图、主框架和应用程序对象的角色。特别关注了单文档界面(SDI)的特性,如SDI的InitInstance函数中的文档模板创建和注册过程。此外,讨论了MFC如何通过命令传递机制实现消息处理的模块化。
摘要由CSDN通过智能技术生成

1. 文档视图结构:

    1) 是MFC的一种模块化设计思想的产物,要求程序的数据和表现数据的视图分开来处理;

    2) 数据以文档的形式表现,文档可以存储在磁盘中永久保存也可以被程序读出并进行处理;

    3) 单文档(SDI,Single Document Interface)和多文档(Multiple Document Interface)的区别:单文档界面程序只支持打开一个文档,而多文档界面允许同事打开多个文档,还支持用多个视图来表现一个文档;

    4) 典型的单文档界面程序体系结构介绍:

         i. 主要包含应用程序对象、主框架对象、视图对象和文档对象;

         ii. 应用程序对象:提供消息循环给主框架和视图,并将消息送给它们两个;

         iii. 主框架对象:主要作为视图、工具栏以及其它用户界面对象的容器,文档视图结构从来都不会为主框架获取设备描述表来绘图,因为其所有的绘图都会输出到视图中,就算让主框架绘图也不会显示,因为视图刚好覆盖了主框架的客户区,是从CFrameWnd派生而来;

         iv. 文档对象:负责和视图交换数据,需要以视觉的形式表现数据时就将数据提供给视图去显示,需要保存视图表现的数据时就从视图获取数据,也可以和磁盘交换数据,提供数据的永久保存,是从CDocument类派生而来的;

         v. 视图对象:主要用于表现数据,同时处理窗口的各种消息,也负责将鼠标和键盘的输入转换成处理数据的命令,从CView或者其它

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MFC(Microsoft Foundation Classes)是一套用于开发Windows应用程序的C++库,其中的文档-视图结构(Document-View Architecture)是一种常见的设计模式,用于实现应用程序的数据和用户界面的分离。 在MFC中,文档(Document)是应用程序的数据模型,而视图(View)是用户界面模型。文档负责管理数据的读写和操作逻辑,而视图则负责展示数据,并与用户交互。文档视图之间通过文档交换框架(Document-View Framework)进行通信。 文档视图之间的关系是一对多的关系,即一个文档可以有多个视图。这种设计模式的好处是,可以在不改变数据模型的情况下,灵活地改变用户界面的展示方式。例如,可以同时显示数据的表格视图和图形视图,或者在打印预览时显示一种特定的视图。 为了实现文档-视图结构,MFC提供了一些基类,如CView和CDocument,以及一些派生类,开发者可以通过继承和扩展这些类来实现自己的文档视图。 在文档-视图结构中,还有一个重要的组件是视图文档框架(View-Document Framework),它负责管理视图文档之间的关系。框架类似于一个协调者,通过注册视图文档的关系,实现视图文档之间的消息传递和同步更新。 总之,MFC文档-视图结构是一种将数据和用户界面分离的设计模式,通过文档管理数据,视图展示数据,并通过框架协调两者之间的关系。这种设计模式使得应用程序更加灵活,易于扩展和维护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值