CDocTemplate 使用

CDocTemplate是抽象的基类,它定义了文档模板的基本函数功能。通常通过应用的InitInstance函数来实现创建一或多个文档模板。文档模板定义了三个类之间的关系。
·
文档类 由CDocument派生得到。
· 视图类 显示文档类的数据,可从CView,CScrollView, CFormView或CEditView中派生得到(可直接使用CEditView)。
· 框架窗口类 含有视图,对SDI应用,由CFrameWnd派生得到;对MDI,由CMDIChildWnd派生得到。如果无需定制框架窗口的行为,可直接使用CMDIChildWnd或CFrameWnd。
应用对它支持的每一类文档都提供了一个文档模板。例如,如果应用支持工作表文本文档,则应用有两个文档模板对象。每个文档模板负责建立与管理该类型的文档。
文档模板将文档、视图和框架窗口类的指针保存在CRuntimeClass 对象中。当构造文档模板时,指定了CRuntimeClass对象。
文档模板包括文档类型(如菜单、图标、资源加速符号表)使用的资源ID,还含有文档类型的更多信息,包括文档类型名称(如WorkSheet)文件扩展名(如.xls)。有的还包括应用的用户界面、Windows 文件管理器和OLE支持等。
如果应用是一个OLE包容器与/或服务器,文档模板还说明了在激活时使用的菜单ID。如果应用是ID服务器,文档模板定义了在激活时使用的工具条ID。通过SetContainerInfo和SetServerInfo来指定这些OLE资源。
CDocTemplate是抽象类,不能直接使用,通常应用使用Microsoft基础类库提供的两种CDocTemplate派生类之一:CSingleDocTemplate用于SDI,CMultiDocTemplate用于MDI。使用文档模板时要参阅更多信息。如果应用需要变化的用户界面,这与SDI与MDI有根本不同,可以从CDocTemplate中派生出自己的类。
所需头文件:#include <afxwin.h>

posted on   荣锋亮  阅读(380)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示