CSplitterWnd使用。(创建3个分割窗口)
窗口布局:
________________
| | |
| | |
|____________ | |
| | |
|____________|__|
其实这是一个很常见的框架窗口,创建时我们使用CSplitterWnd.
首先将整个窗口分割为左右两大块,然后再将左侧的窗口分割为
上下两个窗口。
======================Sample==========================
重载框架的OnCreateClient(),需要在里面对客户区进行窗口
的分割。
xxxx::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
//---------------------------------------------------------
//m_wndSpliter,m_wndSpliter2均为成员变量,CSplitterWnd类别
//CTest1,CTest2,CTest3均继承于CView
//---------------------------------------------------------
//第一次分割左右两个窗口
m_wndSpliter.CreateStatic( this, 1, 2 );
m_wndSpliter.CreateView( 0,1, RUNTIME_CLASS(CTest2), CSize(0,0), pContext );
m_wndSpliter.SetColumnInfo( 0, 700, 50 );
//第二次分割上下两个窗口
m_wndSpliter2.CreateStatic( &m_wndSpliter, 2, 1, WS_CHILD|WS_VISIBLE, m_wndSpliter.IdFromRowCol(0,0) );
m_wndSpliter2.CreateView( 0, 0, RUNTIME_CLASS(CTest1), CSize(0,0), pContext );
m_wndSpliter2.CreateView( 1, 0, RUNTIME_CLASS(CTest3), CSize(0,0), pContext );
m_wndSpliter2.SetRowInfo( 0, 300, 50 );
return TRUE; //重要
}