关于嵌套拆分窗口。
在cmainframe定义
csplitterwnd m_sp1,m_sp2,m_sp3;
然后再
if(
!m_sp1.createstatic(this,1,2)||
!m_sp1.createview(0,1,runtime_class(cconnectionview),csize(0,0),pcontext)||
!m_sp2.createstatic(&m_sp1,2,1,ws_child|ws_visible)||
!m_sp2.createview(1,0,runtime_class(csendview),csize(0,0),pcontext)||
!m_sp3.createstatic(&m_sp2,1,2,ws_child|ws_visible)||
!m_sp3.createview(0,0,runtime_class(cchatview),csize(350,0),pcontext)||
!m_sp3.createview(0,1,runtime_class(cdrawview),csize(0,0),pcontext)
)
return false;
crect rect;
this->getclientrect( &rect );
m_sp1.setcolumninfo(0, rect.width()/2*3, 10);
m_sp1.setcolumninfo(1, rect.width()/1*3, 10);
m_sp1.recalclayout();
m_sp2.setrowinfo(0, rect.height()/3*4, 10);
m_sp2.setrowinfo(1, rect.height()/1*4, 10);
m_sp2.recalclayout();
setactiveview((cview*)m_sp2.getpane(1,0));
return true;
推荐阅读
你问什么呀
代码调度没有报错?
那不就是拆分计算不对?
你是白吃啊。
那里
m_sp1.setcolumninfo(0, rect.width()/2*3, 10);
应该是
m_sp1.setcolumninfo(0, rect.width()*2/3, 10);


讨论区