我在主框架窗口的createclient函数中这样切分
m_wndSplitter1.CreateStatic(this,1,2);
m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CLeftView),CSize(300,0),pContext);
m_wndSplitter2.CreateStatic(&m_wndSplitter1,2,1,WS_CHILD|WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0,1));
m_wndSplitter2.CreateView(0,0,RUNTIME_CLASS(CClientView),CSize(0,150),pContext);
m_wndSplitter2.CreateView(1,0,RUNTIME_CLASS(CView3),CSize(0,0),pContext);
在cclientview中的成员函数中
CMainFrame *pframe = (CMainFrame *)AfxGetApp()->m_pMainWnd;
CMainFrame * pframe = (CMainFrame *)GetParentFrame();
if(pframe==NULL)
return;
CView3 *pview = (CView3 *)pframe->m_wndSplitter2.GetPane(1,0);
编译可以通过但是在最后一句总是出错,不知道为什么。
m_wndSplitter1.CreateStatic(this,1,2);
m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CLeftView),CSize(300,0),pContext);
m_wndSplitter2.CreateStatic(&m_wndSplitter1,2,1,WS_CHILD|WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0,1));
m_wndSplitter2.CreateView(0,0,RUNTIME_CLASS(CClientView),CSize(0,150),pContext);
m_wndSplitter2.CreateView(1,0,RUNTIME_CLASS(CView3),CSize(0,0),pContext);
在cclientview中的成员函数中
CMainFrame *pframe = (CMainFrame *)AfxGetApp()->m_pMainWnd;
CMainFrame * pframe = (CMainFrame *)GetParentFrame();
if(pframe==NULL)
return;
CView3 *pview = (CView3 *)pframe->m_wndSplitter2.GetPane(1,0);
编译可以通过但是在最后一句总是出错,不知道为什么。
解决方案 »
- 文本框自动滚动
- 求助:关于将数组中的内容加入CString变量中
- 关于写入文件 的问题
- 怎么设计socket?
- select模式的服务端的代码问题!!!!!!!!!!
- 急问打包问题!高手们帮忙啊
- static 中显示图片问题
- 我想把 CTreeView 里的 CTreeCtrl 换成自己的 CTreeCtrlEx ,如何实现呢?
- vc6.0中如何使Edit控件能象List控件那样用m_List.Srcoll(size);使滚动条自动下移;
- 我们学校因为有人在某论坛乱说,被上级领导打招呼,结果干脆把所有需要安全连接的封了,普通网页能打开
- 急, 怎么写数据失败~~~~~~~~~~~~~~~~~
- 进程的一点小问题,请帮忙
得不到对应视图的指针总是报错。
CMainFrame * pframe = (CMainFrame *)GetParentFrame();
这里为什么会有两个啊,有一个就可以了
而且下面那个有必要转化吗,本来m_wndSplitter2.GetPane(1,0)就是Cview3啊,
如果你使用同一个文档的话,用文档类通讯就可以了啊
应该是
if(!m_wndSplitter1.CreateStatic(this,1,2))
return false;
if(!m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CLeftView),CSize(300,0),pContext))
return false;
if(m_wndSplitter2.CreateStatic(&m_wndSplitter1,2,1,WS_CHILD|WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0,1)))
return false;
if(!m_wndSplitter2.CreateView(0,0,RUNTIME_CLASS(CClientView),CSize(0,150),pContext)||
!m_wndSplitter2.CreateView(1,0,RUNTIME_CLASS(CView3),CSize(0,0),pContext))
return false;
/////////////////////////////////
CMainFrame *pframe = (CMainFrame *)AfxGetApp()- >m_pMainWnd;
if(pframe==NULL)
return;
CView3 *pview = (CView3 *)pframe- >m_wndSplitter2.GetPane(1,0);
现在的问题是我点击运行
他弹出一个对话框说“建立空文档失败”,不明白我并没有建立文档啊?
请高手不吝赐教,谢谢!!!
if(m_wndSplitter2.CreateStatic(&m_wndSplitter1,2,1,WS_CHILD ¦WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0,1)))
没有加!号。
但是仍然不能得到CView3的指针,另外那个
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
、。。
CMainFrame *pframe = (CMainFrame *)AfxGetApp()- >m_pMainWnd;
CMainFrame * pframe = (CMainFrame *)GetParentFrame();
这里为什么会有两个啊,有一个就可以了
而且下面那个有必要转化吗,本来m_wndSplitter2.GetPane(1,0)就是Cview3啊,
如果你使用同一个文档的话,用文档类通讯就可以了啊
他的返回值是cwnd*所以就加了(CView3*);