我在自定义一个dialogbar中的OnInitDialog() 里
定义了一个指向C**view的指针
CMainFrame *pMain=(CMainFrame *)GetParentFrame();
CSTestView* p=(CSTestView*)(pMain->GetActiveView());
p->Invalidate();
但是在执行窗体重绘这个函数时就发生错误,这是为什么,请大家指点指点!!
定义了一个指向C**view的指针
CMainFrame *pMain=(CMainFrame *)GetParentFrame();
CSTestView* p=(CSTestView*)(pMain->GetActiveView());
p->Invalidate();
但是在执行窗体重绘这个函数时就发生错误,这是为什么,请大家指点指点!!
->
CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd();我猜你是要这样吧
不行,Afx这个函数不能用在我这个程序里,我刚试过了
C**View *p=new C**VIew(),发现好像不行,所以就用上述方法进行定义,虽然定义成功,但是无法调用重绘函数,而且调试时发现p的指针的地址都是问号,好像没有找到view类的指针
你的是MDI程序?
http://www.cnblogs.com/alonecat06/archive/2010/02/08/1666124.html
http://www.cppblog.com/justin-shi/archive/2008/06/14/53196.html
采用AfxGetMainWnd(),pMain指针的值也都变成了问号
真正出错是在CSTestView* p=(CSTestView*)(pMain->GetActiveView());这句话,就是采用AfxGetMainWnd()的时候
领导确实很有眼界啊,被你一语道破,我只有40分了,就都给你了,其他兄弟不要恨我