VC的文档结构!!!
最简单的是 CWINAPP-CFRAMEWND结构
操作基本放在CFRAMEWND里。
但用APPWIZARD生成是,还有一个视图类,怎么用啊?
问题点数:0、回复次数:4Top
1 楼night_cat(夜猫子)回复于 2003-06-01 09:09:55 得分 0
可以不用的,视图是用来与文档类交互的,
都所有的操作都放在框架类中处理,这个合理吗,这个?
在文档类中有一个重要的成员函数用于文档的存储的,
在视图类中有一个重要的函数是用文档类中的数据的显示的。
当产生重绘消息时,这个函数都会被调用,它读取文档中的数据,重绘窗口!Top
2 楼zuohuijun(流言蜚语)回复于 2003-06-01 12:44:04 得分 0
请问如何动态决定文档/视的绑定?
如何在程序运行期间根据需要启动不同的文档/视?比如,我要启动一个编辑窗口,那么我的视从CRichEditView继承,要启动一个信息浏览时,我需要启动一个从CListView继承的视。Top
3 楼BinaryPoet(二进制诗人)回复于 2003-06-01 13:02:04 得分 0
TO: zuohuijun(流言蜚语)
MFC 框架的构建顺序为:
1。CWinApp类在InitInstance中增加DocTemplate指定文档视图的关联,并且创建CFrameWnd的实例(这个实例一般说来是主窗口,而不是DocTemplate中指定的窗口类,当然,对于单文档的是这样的。);
2。在FileNew方法中DocManger创建文档的实例,以及关联的CFrameWnd类(多文档中)
3。CFrameWnd类在CreateClient方法中将会传入一个CCreateContext的参数,这个参数指定了当前关联的文档实例,以及视图的RUNTIME_CLASS。进而构建视图。
如果你要自己动态的切换视图,就可利用一个CCreateContext对象,添入该对象的m_pCurrentDoc的指针,以及m_pNewViewClass的View的类型(实际上是一个CRuntimeClass的指针),然后以该CCreateContext对象为参数,调用CFrameWnd::CreateView就可以了,并且该方法将返回该视图的指针(但是是个CWnd*类的指针,一般需要强制转化)。Top
4 楼tangwei168()回复于 2003-06-02 00:23:21 得分 0
同意楼上朋友的意见!Top




