BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
CCreateContext* pContext)
{
CRect rc;
GetClientRect(&rc);
m_bSplitted=m_wndSplitter.CreateStatic(this, 2, 2);
if(!m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CView1), CSize(0, 0), pContext))
return FALSE;
if(!m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CView1), CSize(0, 0), pContext))
return FALSE;
if(!m_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CMsgContentNew), CSize(0, 0), pContext))
return FALSE;
if(!m_wndSplitter.CreateView(1, 1, RUNTIME_CLASS(CMsgContentNew), CSize(0, 0), pContext))
return FALSE;
return TRUE;
}
void CMainFrame::OnSize(UINT nType,int cx,int cy)
{
if(!m_bSplitted)
return;
if(!m_wndSplitter.GetSafeHwnd())
return;
CRect rect;
GetClientRect(rect);
m_wndSplitter.SetRowInfo(0,int(rect.Height()*0.7),100);
m_wndSplitter.SetColumnInfo(0,int(rect.Width()*0.5),100);
m_wndSplitter.RecalcLayout();
m_wndSplitter.GetPane(0,0)->SendMessage(WM_SIZE);
m_wndSplitter.GetPane(0,1)->SendMessage(WM_SIZE);
m_wndSplitter.GetPane(1,0)->SendMessage(WM_SIZE);
m_wndSplitter.GetPane(1,1)->SendMessage(WM_SIZE);
}
其中class CMsgContentNew : public CFormView
class CView1 : public CFormView