首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

CSplitterWnd分割的窗口在那里调整大小?解决方案

2013-01-25 
CSplitterWnd分割的窗口在那里调整大小?本帖最后由 VisualEleven 于 2013-01-10 14:55:44 编辑我用CSplitt

CSplitterWnd分割的窗口在那里调整大小?
本帖最后由 VisualEleven 于 2013-01-10 14:55:44 编辑 我用CSplitterWnd分割了三个窗口:左中右,左边和右边的窗口的宽度是一样,当整个界面最大化、最小化、恢复一般窗口的时候,左右窗的宽度不变,但是中间的窗口要跟随界面的变化而变化,应该在那里设置呢?

我在void CMainFrame::OnSize(UINT nType, int cx, int cy)加上


if(m_nScreenWidth>0 && m_nScreenWidth != cx)
{
m_nCenterWidth = cx - m_nLeftWidth - m_nRightWidth;
m_wndSplitter.SetColumnInfo(1, m_nCenterWidth, 0);
m_nScreenWidth = cx;
}

没有效果,并且最小化时程序崩溃,请问在那里设置比较合适?


[解决办法]
CMainFrame的OnSize
CSplitterWnd::SetColumnInfo/SetRowInfo()之后,需要调用CSplitterWnd::RecalcLayout()

WM_GETMINMAXINFO

热点排行