我是用单视图做的
我要实现的功能就是
我把视图分成上下两个,上面和下面各画各的图互相不影响!
下面的试图在点击分割线的时候弹出来,再点击分割线的时候收回去!
不一定非要点击分割线,做成菜单或者按钮都可以现在我把视图已经动态分割成两个视图了
而且也有点击弹出收回的功能
但是两个视图公用的是同一个view类
我不知道该怎么分配不同的view类
希望有知道方法的大侠给点帮助和提示最好有类似的代码可以研究一下
我要实现的功能就是
我把视图分成上下两个,上面和下面各画各的图互相不影响!
下面的试图在点击分割线的时候弹出来,再点击分割线的时候收回去!
不一定非要点击分割线,做成菜单或者按钮都可以现在我把视图已经动态分割成两个视图了
而且也有点击弹出收回的功能
但是两个视图公用的是同一个view类
我不知道该怎么分配不同的view类
希望有知道方法的大侠给点帮助和提示最好有类似的代码可以研究一下
m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CYourView), CSize(300,0),pContext);
http://vckbase.com/document/viewdoc/?id=192
看他
我用的是动态分割的方法
也是用CreateView()么?
jjaikaikai
如何获得子窗口的指针呢?
在双击分割条的时候由一个视图变为两个
在双击分割条的时候又由两个视图变为一个
这个过程怎么得到子视图的指针?
但是发现知道怎么画图
虽然在OnDrow下可以画
但是我不是想在一开始就画
我想通过菜单
处罚一定的事件再画
但是我不知道如何GetDC()
直接
CDC *pDC = GetDC();有问题
得不到分割后的视图区域。
大家有什么办法么?
那是因为你把窗口都分成几个视了,pDC->GetDC可能就会出问题,那是不能明白到底是哪个设备上下文
if (!m_wndSplitter.CreateStatic(this, 2, 1))
return FALSE;
if (!m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CEDocMakerView), CSize(100, 100), pContext))
{
m_wndSplitter.DestroyWindow();
return FALSE;
}
if (!m_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CImageView), CSize(100, 100), pContext))
{
m_wndSplitter.DestroyWindow();
return FALSE;
} CEDocMakerView* pView = (CEDocMakerView *)m_wndSplitter.GetPane(0, 0);
CImageView* pImageView = (CImageView *)m_wndSplitter.GetPane(1, 0);CDC *pDC = pView->GetDC();
.......
可是放到线程中就出问题了
出问题的地方还是在CDC *pDC = pView->GetDC();
感谢大家的回答,我先给分,然后再开个贴再问大家!