美文网首页
MFC_文档、视图和框架

MFC_文档、视图和框架

作者: 红色海_ | 来源:发表于2020-04-06 19:45 被阅读0次

MFC 框架的核心是文档和视图的概念。 文档是用户在编辑会话中与之进行交互的数据对象。 创建由新建打开命令文件菜单并且通常保存在文件中。 (标准 MFC 文档类派生CDocument,与活动文档和 OLE 复合文档不同。)视图是用户可用来与文档进行交互的窗口对象。

一个正在运行的应用程序中的关键对象有:

  • 一个文档或多个文档。

    您的文档类 (派生自CDocument) 指定应用程序的数据。

    如果在应用程序中需要 OLE 功能,派生文档类从COleDocument或其派生的类,具体取决于所需的功能的类型之一。

  • 一个视图或多个视图。

    视图类 (派生自CView) 是用户的"窗口的数据。" 视图类控制用户查看文档的数据并与之交互的方式。 在某些情况下,您可能希望一个文档拥有多个数据视图。

    如果需要滚动,派生CScrollView。 如果您的视图具有对话框模板资源中布局的用户界面,派生CFormView。 对于简单的文本数据,使用或派生自CEditView。 对于一个基于窗体的数据访问应用程序,如数据输入程序,请从派生CRecordView (针对 ODBC)。此外提供了类CTreeViewCListView,并CRichEditView

  • 框架窗口

    视图显示在“文档框架窗口”中。 在 SDI 应用程序中,文档框架窗口也是应用程序的“主框架窗口”。 在 MDI 应用程序中,文档窗口是显示在主框架窗口中的子窗口。 派生的主框架窗口类指定包含您的视图的框架窗口的样式和其他特性。 如果需要自定义框架窗口,请从派生CFrameWnd自定义 SDI 应用程序的文档框架窗口。 派生自CMDIFrameWnd以自定义 MDI 应用程序的主框架窗口。 此外从派生类CMDIChildWnd自定义每种不同的应用程序支持的 MDI 文档框架窗口。

  • 一个或多个文档模板

    文档模板可协调文档、视图和框架窗口的创建。 一种特定的文档模板类,派生自类CDocTemplate、 创建和管理一种类型的所有打开的文档。 支持多种文档类型的应用程序具有多个文档模板。 使用类CSingleDocTemplate SDI 应用程序,或使用类CMultiDocTemplate为 MDI 应用程序。

  • 应用程序对象

    应用程序类 (派生自CWinApp) 控件的所有上述对象并指定应用程序的行为,例如初始化和清理。 应用程序仅有的一个应用程序对象为应用程序支持的任何文档类型创建和管理文档模板。

  • 线程对象

    如果应用程序创建不同的执行线程 — 例如,若要在后台执行计算,将使用派生自类CWinThreadCWinApp本身派生自CWinThread和应用程序中表示主线程的执行 (或主进程)。 还可以在辅助线程中使用 MFC。

在一个正在运行的应用程序中,这些对象以协作方式响应用户操作(由命令和其他消息绑定在一起)。 一个应用程序对象管理一个或多个文档模板。 每个文档模板创建并管理一个或多个文档(具体取决于应用程序是 SDI 还是 MDI)。 用户通过包含在框架窗口中的视图查看和操作文档。 下图演示了 SDI 应用程序的这些对象之间的关系。

SDI 应用程序.png

本系列文章的其他部分介绍了框架工具、MFC 应用程序向导和资源编辑器如何创建这些对象,如何协同工作以及如何在编程中使用它们。 中更详细地讨论了文档、 视图和框架窗口窗口对象文档/视图体系结构

相关文章

  • MFC_文档、视图和框架

    MFC 框架的核心是文档和视图的概念。 文档是用户在编辑会话中与之进行交互的数据对象。 创建由新建或打开命令文件菜...

  • VC多文档程序文档,视图指针遍历问题

    2009-05-11 1、模板、文档、视图、框架的关系 (1)文档保留该文档的视图列表和指向创建该文档的文档模板的...

  • 2017.9.29

    今天上午老师继续带领我们学习视图文档结构和界面美化。文档视图结构的应用程序框架中,应用对象负责创建文档模板,而文档...

  • 2017-9-29学习总结

    星期五 晴 今天上午继续学习了视图文档结构和界面美化。 文档视图结构的应用程序框架中,应用对象负责创建文档模板...

  • 9月29日四期C++总结

    今天老师带我们继续学习了视图文档结构、菜单、背景位图和工具栏。 文档视图结构的应用程序框架的实现过程中,应用对象负...

  • MFC_ 框架 (MFC)

    在使用 Microsoft 基础类 (MFC) 库框架时很大程度上基于几个主要的类和 Visual C++ 工具。...

  • 6-视图集和路由器-Django REST框架

    6-视图集和路由器-Django REST框架 教程6:视图集和路由器 REST框架包括用于处理ViewSets,...

  • Qt开发技术:图形视图框架(一)基本介绍

    前话   使用到Qt的视图框架。 Qt视图框架介绍 简介 图形视图框架(The Graphic View Fram...

  • Vue框架总结之vue的优点

    vue的优点 轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十kb; 简单易学:国人开发,中文文档...

  • 微信小程序_框架

    1.框架提供了自己的视图层描述语言WXML 和WXSS,以及基于JavaScript 的逻辑层框架,并在视图层与逻...

网友评论

      本文标题:MFC_文档、视图和框架

      本文链接:https://www.haomeiwen.com/subject/wfciphtx.html