CDocument, CView, CFrameWnd, CWinApp, CDocTemplate 这五个框架类在MFC文档/视图结构程序中的角色

本文主要是介绍CDocument, CView, CFrameWnd, CWinApp, CDocTemplate 这五个框架类在MFC文档/视图结构程序中的角色,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

说明CDocument, CView, CFrameWnd, CWinApp, CDocTemplate 这五个框架类在MFC文档/视图结构程序中各自扮演

 

1 CWinApp拥有一个对象指针:CDocManager* m_pDocManager


2 CDocManager拥有一个指针链表CPtrList m_templateList,用来维护一系列的Docment Template。一个程序若支持两“种”文件类型,就应该有两份Document Templates,应用程序应该在CMyWinApp::InitInstance中以AddDocTemplate将这些Document Template加入到CDocManager所维护的链表之中。


3 CDocTemplate 拥有三个成员变量,分别持有Document 、View、Frame 的CRumtimeClass 指针,另有一个成员变量m_nIDResource,用来表示此Document显现时应该采用的UI 对象。这四份资料应该在CMyWinApp::InitInstance 函数构造CDocTemplate(注1)时指定之,成为构造式的参数。当使用者欲打开一
份文件(通常是借着【File/Open】或【File/New】命令项),CDocTemplate 即可藉由Document/View/Frame 之CRuntimeClass 指针(注2)进行动态生成。


4 CDocument 有一个成员变量CDocTemplate* m_pDocTemplate,回指其Document Template;另有一个成员变量CPtrList m_viewList,表示它可以同时维护一系列的Views。


5 CFrameWnd 有一个成员变量CView* m_pViewActive ,指向目前正作用中的View 。


6 CView 有一个成员变量CDocument* m_pDocument,指向相关的Document。

这篇关于CDocument, CView, CFrameWnd, CWinApp, CDocTemplate 这五个框架类在MFC文档/视图结构程序中的角色的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1126373

相关文章

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

Python使用python-docx实现自动化处理Word文档

《Python使用python-docx实现自动化处理Word文档》这篇文章主要为大家展示了Python如何通过代码实现段落样式复制,HTML表格转Word表格以及动态生成可定制化模板的功能,感兴趣的... 目录一、引言二、核心功能模块解析1. 段落样式与图片复制2. html表格转Word表格3. 模板生

C++ HTTP框架推荐(特点及优势)

《C++HTTP框架推荐(特点及优势)》:本文主要介绍C++HTTP框架推荐的相关资料,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Crow2. Drogon3. Pistache4. cpp-httplib5. Beast (Boos