关于CSplitterWnd创建的子窗口大小的自动变化问题
VC中,我用CSplitterWnd将窗口分为两个子窗口,我现在希望按一个菜单按钮后,左边的子窗口的宽度变成0,右子窗口铺满整个窗口,该如何做啊,请帮帮忙啊! 问题点数:20、回复次数:3Top
1 楼EnochShen(小疯子:真的好菜—知耻而后勇!)回复于 2004-12-04 10:53:36 得分 5
SetRowInfoTop
2 楼bobob(静思)回复于 2004-12-04 11:01:26 得分 15
BOOL bShowThumb = FALSE;
void CMainFrame::Split()
{
CRect rect;
GetWindowRect(&rect);
if(!bShowThumb)
{
SecView* pSecView = (SecView*)m_wndSplitter.GetPane(0,1);
m_wndSplitter.SetColumnInfo(1,rect.Width()-100,10);
FstView* pFstView = (FstView*)m_wndSplitter.GetPane(0,0);
m_wndSplitter.SetColumnInfo(0,100,10);
m_wndSplitter.RecalcLayout();
bShowThumb = TRUE;
}
else
{
SecView* pSecView = (SecView*)m_wndSplitter.GetPane(0,1);
m_wndSplitter.SetColumnInfo(1,rect.Width(),10);
FstView* pFstView = (FstView*)m_wndSplitter.GetPane(0,0);
m_wndSplitter.SetColumnInfo(0,0,10);
m_wndSplitter.RecalcLayout();
bShowThumb = FALSE;
}
}
Top
3 楼wuhuang95(游风抚云)回复于 2004-12-04 13:33:41 得分 0
关键是这一句:m_wndSplitter.RecalcLayout();我忘了调用!现在搞定啦!感谢上面两位大哥!!!Top




