BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
// TODO: Add your specialized code here and/or call the base class
if(splitterwnd1.CreateStatic(this,1,2)==NULL)
return FALSE;
splitterwnd1.CreateView(0,1,RUNTIME_CLASS(CSpView),CSize(0,0), pContext);
if(splitterwnd2.CreateStatic(&splitterwnd1,2,1,WS_CHILD|WS_VISIBLE,
splitterwnd1.IdFromRowCol(0, 0))==NULL)
return FALSE;
splitterwnd2.CreateView(0,0,RUNTIME_CLASS(CSpView),CSize(800,300),pContext);
splitterwnd2.CreateView(1,0,RUNTIME_CLASS(CSpView),CSize(500,500),pContext);
return TRUE;
//return CFrameWnd::OnCreateClient(lpcs, pContext);
}上面这段代码是想设置出左边上下两个窗口,右边就一个窗口的客户区。是想通过先设置出1行2列的分割窗口,然后在把左边的分割窗口再次分割成2行一列的风格窗口实现的但是问题是左边的2个窗口一直被右边的窗口给挤扁了,而且CreateView里面的Size参数msdn上语焉不详,不知道具体对应窗口大小的什么参数我发现问题似乎是在于第一次分割的时候只CreateView了右边的窗口,所以左边一直是被挤扁的,后面再设置左边窗口的再次分割似乎并不能够把左边的窗口弄大哪位大虾给看看,谢谢
{
// TODO: Add your specialized code here and/or call the base class
if(splitterwnd1.CreateStatic(this,1,2)==NULL)
return FALSE;
splitterwnd1.CreateView(0,1,RUNTIME_CLASS(CSpView),CSize(0,0), pContext);
if(splitterwnd2.CreateStatic(&splitterwnd1,2,1,WS_CHILD|WS_VISIBLE,
splitterwnd1.IdFromRowCol(0, 0))==NULL)
return FALSE;
splitterwnd2.CreateView(0,0,RUNTIME_CLASS(CSpView),CSize(800,300),pContext);
splitterwnd2.CreateView(1,0,RUNTIME_CLASS(CSpView),CSize(500,500),pContext);
return TRUE;
//return CFrameWnd::OnCreateClient(lpcs, pContext);
}上面这段代码是想设置出左边上下两个窗口,右边就一个窗口的客户区。是想通过先设置出1行2列的分割窗口,然后在把左边的分割窗口再次分割成2行一列的风格窗口实现的但是问题是左边的2个窗口一直被右边的窗口给挤扁了,而且CreateView里面的Size参数msdn上语焉不详,不知道具体对应窗口大小的什么参数我发现问题似乎是在于第一次分割的时候只CreateView了右边的窗口,所以左边一直是被挤扁的,后面再设置左边窗口的再次分割似乎并不能够把左边的窗口弄大哪位大虾给看看,谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货