在MFC编程的时候,我想在自己定义的类的成员函数中获取view的指针,怎么获取

在MFC编程的时候,我想在自己定义的类的成员函数中获取view的指针,比如说我自己定义的类是CDot,view为CHuaView,我用的是((CFrameWnd*)(Af... 在MFC编程的时候,我想在自己定义的类的成员函数中获取view的指针,比如说我自己定义的类是CDot,view为CHuaView,我用的是
((CFrameWnd*)(AfxGetApp()->m_pMainWnd))->GetActiveView()

但获的是CView的指针,无法获取CHuaView的指针,所以不能获取CHuaView的成员变量,我这样解释对吗?应该怎么获取CHuaView的成员变量呢?
展开
 我来答
zhuhuaizhong
2013-04-10 · TA获得超过7274个赞
知道大有可为答主
回答量:3978
采纳率:63%
帮助的人:3419万
展开全部
#include "HuaView.h"
然后强制转换
CHuaView* pView;
pView=(CHuaView *)((CFrameWnd*)(AfxGetApp()->m_pMainWnd))->GetActiveView();
更多追问追答
追问
还是无法调用它的成员变量啊、、、
将父类CView强制转化为子类CHuaView貌似是会把成员变量给丢掉的吧~~~
再麻烦您一下,view里GetDocument()老报错,怎么改也改不了,这是啥回事?
追答
不会丢掉的。 代码生效的前提是你的活动视图得确实是 CHuaView ,你不能说新建一个 CHuaView 类就用,那不行的,得把系统默认生成的那个 View 类用 CHuaView 替换掉才行。

GetDocument() 报错你看看这个函数返回的是不是存在,和 NULL 比对一下,如果 Document 的对象还没生成,你就 GetDocument 然后调用 Document 的方法肯定会出错。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式