我创建了一个单文档工程,并将其分割成左右两个视图类,先要在右边视图类调用左边视图类的一个变量,具体该怎么调用啊??为什么我直接在CRightView 中这样写不行:CLeftView pview;
view.xxxxx;
提示错误说什么CLeftView protected??(头文件定义了)还有为什么这样也不行??CLeftView *pView=GetLeftPane();
pView->m_bAuoMenuEnable=FALSE;提示说GetLeftPane没定义,改怎样才能调用啊???谢谢!!!!
view.xxxxx;
提示错误说什么CLeftView protected??(头文件定义了)还有为什么这样也不行??CLeftView *pView=GetLeftPane();
pView->m_bAuoMenuEnable=FALSE;提示说GetLeftPane没定义,改怎样才能调用啊???谢谢!!!!
例如:
你创建左右视图时用到的m_splitter对象,如下就可以获得左视图指针:
CLeftView *pView=(CLeftView *)m_splitter.GetPane(0,0);如何找到这个m_splitter对象呢?应该先找到主框架指针,如pf
CMainFrame* pf=(CMainFrame*)AfxGetApp()->m_pMainWnd;
不出意外的话,你是在主框架中创建的左右视图,那么,就可以用
pf->m_splitter来访问这个CSplitterWnd对象了。
//得到文档指针
CMainFrame* pf=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CMyDoc* pdoc=(CMyDoc*)pf->GetActiveDocument();//再从文档取得视图指针
POSITION pos = pdoc->GetFirstViewPosition();
if (pos != NULL)
{
m_pLeftView = (CLeftPanel*)pdoc->GetNextView(pos);
m_pRightView = (CRightPanel*)pdoc->GetNextView(pos);
}