theApp.m_pDocManager->GetFirstDocTemplatePosition();
CDocTemplate::GetFirstDocPosition();
没有用过,不过应该可以的吧.
CDocTemplate::GetFirstDocPosition();
没有用过,不过应该可以的吧.
解决方案 »
- 求教xtreme toolkit冲突的问题!
- 小女正在学习,
- 如何在不占用串口资源的情况下监控串口收发的数据?
- 程序用CStdioFile 实现从文件里把数据读到combo box里,可是为什么不是逐行读,而是隔行读?请高手支招,小妹谢了
- 100分求助如何实现将数组输出到记事本中
- 感谢chenhq(chenhq) 。近来接分
- 请问为何我的程序在Release版本下出错?
- 如何点击右键显示自己定义的菜单?
- ACCESS数据库是否存在 插入数据的问题
- VC+SQL SERVER 7.0如何使用ADO的Parameter对象。答者有分!
- ::PostMessage(hWndPrev,WM_UPDATA_CAIGOUFROMOLD,0,0)2003下运行正常在XP下报错
- 关于WideCharToMultiByte来解码UTF8
CWinApp::GetNextDocTemplate
http://www.ebook520.com/showbooktext.asp?id=2865
多文档模板,其方法与上述视图的获取方法很接近,这里稍做解释,如果不清楚,
请查阅MSDN.
可以用CWinApp::GetFirstDocTemplatePostion获得应用程序注册的第一个文档模板
的位置;利用该值来调用CWinApp::GetNextDocTemplate函数,获得第一个
CDocTemplate对象指针。 POSITION GetFirstDocTemplate( ) const;
CDocTemplate *GetNextDocTemplate( POSITION & pos ) const;
第二个函数返回由pos 标识的文档模板。POSITION是MFC定义的一个用于迭代或对象指针检索的值。通过这两个函数,应用程序可以遍历整个文档模板列表。如果被检索的文档模板是模板列表中的最后一个,则pos参数被置为NULL。
12)一个文档模板可以有多个文档,每个文档模板都保留并维护了一个所有对应文
档的指针列表。
用CDocTemplate::GetFirstDocPosition函数获得与文档模板相关的文档集合中第一
个文档的位置,并用POSITION值作为CDocTemplate::GetNextDoc的参数来重复遍历与模板相关的文档列表。函数原形为:
viaual POSITION GetFirstDocPosition( ) const = 0;
visual CDocument *GetNextDoc(POSITION & rPos) const = 0;
如果列表为空,则rPos被置为NULL.
13)在文档中可以调用CDocument::GetDocTemplate获得指向该文档模板的指针。
函数原形如下: CDocTemplate * GetDocTemplate ( ) const;
如果该文档不属于文档模板管理,则返回值为NULL。
POSITION p=pApp->GetFirstDocTemplatePosition();//得到第一个文档模板
while(p!=NULL)//遍历文档模板
{CDocTemplate* pDocTemplate=pApp->GetNextDocTemplate(p);
POSITION p1=pDocTemplate->GetFirstDocPosition();//得到文档模板对应的第一个文档
while(p1!=NULL)//遍历文档模板对应的文档
{CDocument* pDocument=pDocTemplate->GetNextDoc(p1);
POSITION p2=pDocument->GetFirstViewPosition();//得到文档对应的第一个视图
while(p2!=NULL)//遍历文档对应的视图
{CView* pView=pDocument->GetNextView(p2);
}}}