为什么MFC 第二次分割的窗口都显示不出来?

请问一下,各位大侠,为什么MFC 第二次分割的窗口都显示不出来?

 这是MFC基于单文档的窗口分割。代码中 ,tv公有继承于 CView,child2和 ct都是继承于CFormView。

在MainFrm.h中定义了cs1, cs2, cs3三个分割窗口,CSplitterWnd  cs1, cs2, cs3;

按照网上的资料代码如下:

BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
	// TODO:  在此添加专用代码和/或调用基类
	CRect cr;
	GetClientRect(cr);

	cs1.CreateStatic(this, 1, 2);//第一次分割为左右两个窗口
	cs1.CreateView(0, 0, RUNTIME_CLASS(tv), CSize(0.5*cr.Width(), 0.5*cr.Height()), pContext);
	cs1.CreateView(0, 1, RUNTIME_CLASS(tv), CSize(0.5*cr.Width(), 0.5*cr.Height()), pContext);
	
	cs2.CreateStatic(&cs1, 2, 1, WS_CHILD | WS_VISIBLE, cs1.IdFromRowCol(0, 0));//左边窗口分割为上下两个窗口
	cs2.CreateView(0, 0, RUNTIME_CLASS(child2), CSize(0.5*cr.Width(), 0.25*cr.Height()), pContext);
	cs2.CreateView(1, 0, RUNTIME_CLASS(child2), CSize(0.5*cr.Width(), 0.25*cr.Height()), pContext);
	
	cs3.CreateStatic(&cs1, 2, 1, WS_CHILD | WS_VISIBLE, cs1.IdFromRowCol(0, 1));//右边窗口也分割为上下两个窗口
	cs3.CreateView(0, 0, RUNTIME_CLASS(ct), CSize(0.5*cr.Width(), 0.20*cr.Height()), pContext);
	cs3.CreateView(1, 0, RUNTIME_CLASS(ct), CSize(0.5*cr.Width(), 0.30*cr.Height()), pContext);

	return TRUE;
	//return CFrameWnd::OnCreateClient(lpcs, pContext);

但是运行出来,只出现第一次分割的左右两个窗口

请问各位大侠,这个哪里出了问题了呢?

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^