如何获取视指针? 在一个SDI中,取视图应该用GetActiveView,但现在我在程序的其他地方调用该函数,却返回了另外一个类型的视图,怎么办?(我的程序向VC++界面一样,在控制条中使用了多个视图的派生类) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 POSITION pos = GetFirstViewPosition();while (pos != NULL){ CView* pView = GetNextView(pos); if( pView->IsKindOf( RUNTIME_CLASS( CMyView ) ) ){ }} 我在CMainFrame中无法得到该指针,GetActiveDocument 为空,请高手指点一二,不胜感激!! 如何在程序中得到各种对象的指针全局函数AfxGetApp可以得到CWinApp应用类指针 AfxGetApp()->m_pMainWnd为框架窗口指针 在框架窗口中:CFrameWnd::GetActiveDocument得到当前活动文档指针 在框架窗口中:CFrameWnd::GetActiveView得到当前活动视指针 在视中:CView::GetDocument得到对应的文档指针 在文档中:CDocument::GetFirstViewPosition,CDocument::GetNextView用来遍历所有和文档关联的视。 在文档中:CDocument::GetDocTemplate得到文档模板指针 在多文档界面中:CMDIFrameWnd::MDIGetActive得到当前活动的MDI子窗口 不要太拘泥于MFC给你的框架,可以在CWinApp内做一个链表,比如typedef list< CView*> MYVIEWLIST;MYVIEWLIST m_viewlist;在你的view InitUpdate 时将this指针加入其中, theApp.m_viewlist.push_back((CView*)this);这样你在哪都可以调用到。OK??? 努力吧!!!================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。 ★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! ★ 支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名 ● 可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zipHttp://www.ChinaOK.net/csdn/csdn.rarHttp://www.ChinaOK.net/csdn/csdn.exe [自解压] DestroyWindow会调用我自己写的派生窗口的析构函数吗 工具栏按钮更换图标 如何将LIB静态库在.NET下转化为COM组件? [求助] 关于WINDOWS XP 的安全模式问题(昆明)? 为什么我想获得本窗口图象,得到的却是其它窗口的图象 在ACTIVEX控件中怎样建立与ORACLE的连接? 没有贴子介绍什么是atl/activex/com!! 如何激活一个对话框 就想鼠标点击了标题栏一样 [100分求助!]VC中调用DLL的问题 如何在除OnDraw之外的地方得到分割视图的客户区而非整个窗口的大小? 马上要用vc做项目了,来这拜山头. 求救 组件创建实例失败
while (pos != NULL)
{
CView* pView = GetNextView(pos);
if( pView->IsKindOf( RUNTIME_CLASS( CMyView ) ) ){ }
}
请高手指点一二,不胜感激!!
全局函数AfxGetApp可以得到CWinApp应用类指针
AfxGetApp()->m_pMainWnd为框架窗口指针
在框架窗口中:CFrameWnd::GetActiveDocument得到当前活动文档指针
在框架窗口中:CFrameWnd::GetActiveView得到当前活动视指针
在视中:CView::GetDocument得到对应的文档指针
在文档中:CDocument::GetFirstViewPosition,CDocument::GetNextView用来遍历所有和文档关联的视。
在文档中:CDocument::GetDocTemplate得到文档模板指针
在多文档界面中:CMDIFrameWnd::MDIGetActive得到当前活动的MDI子窗口
typedef list< CView*> MYVIEWLIST;
MYVIEWLIST m_viewlist;
在你的view InitUpdate 时将this指针加入其中,
theApp.m_viewlist.push_back((CView*)this);
这样你在哪都可以调用到。OK??? 努力吧!!!
================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]