MFC 窗口分割(拆分)问题

效果图:
2025-05-11 10:08:14
推荐回答(1个)
回答1:

重载类的OnCreateClient函数,在OnCreateClient中加入类似下面的代码:
BOOL bSplitter;
CRect rect;

if (FALSE == m_splitterWnd.CreateStatic(this, 2, 1))
return FALSE;

GetClientRect(&rect);
CSize upSize(rect.Width(), rect.Height()/2);
CSize downSize(rect.Width(), rect.Height()/2);

bSplitter = m_splitterWnd.CreateView(1,0,RUNTIME_CLASS(class1), downSize, pContext);
bSplitter = m_splitterWnd.CreateView(0, 0, RUNTIME_CLASS(class2), upSize, pContext);
return bSplitter;
将原来的return语句注掉,m_splitterWnd为CSplitterWnd类的对象,class1和class2是你自己创建的要关联到每个分隔窗口的类,我给的例子是把窗口分隔成2行1列,根据 你自己的需要可以改