窗口分割 CSplitterWnd
2012-02-23 15:54
330 查看
1、CMainFrame增加成员变量:
CSplitterWnd m_wndSplitter;
CSplitterWnd m_wndSplitter1;
2、映射CMainFrame::OnCreateClient函数:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
// 创建一个静态分栏窗口,分为二行一列
if (m_wndSplitter1.CreateStatic(this, 2, 1) == NULL)
{
return FALSE;
}
// 第一行分割为两列
if (m_wndSplitter.CreateStatic(&m_wndSplitter1, 1, 2, WS_CHILD|WS_VISIBLE, m_wndSplitter1.IdFromRowCol(0, 0)) == NULL)
{
return FALSE;
}
// 设置第一行View
m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CToolBarTestView), CSize(200,200), pContext);
m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CToolBarTestView), CSize(600,200), pContext);
// 设置第二行View
m_wndSplitter1.CreateView(1, 0, RUNTIME_CLASS(CToolBarTestView), CSize(20,20), pContext);
// 设置第一行高度
CRect rect;
GetClientRect(&rect);
m_wndSplitter1.SetRowInfo(0, rect.Height() * 2 / 3, 0);
return TRUE;
}
3、获取指定的View实例:
CToolBarTestView* pTestView = (CToolBarTestView*)this->m_wndSplitter.GetPane(0, 1); // 第一行第二列
if (pTestView)
{
return;
}
4、m_wndSplitter.CreateView可创建自定义的各种View,例如:CTreeView、CListView、CRichEditView等等
CSplitterWnd m_wndSplitter;
CSplitterWnd m_wndSplitter1;
2、映射CMainFrame::OnCreateClient函数:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
// 创建一个静态分栏窗口,分为二行一列
if (m_wndSplitter1.CreateStatic(this, 2, 1) == NULL)
{
return FALSE;
}
// 第一行分割为两列
if (m_wndSplitter.CreateStatic(&m_wndSplitter1, 1, 2, WS_CHILD|WS_VISIBLE, m_wndSplitter1.IdFromRowCol(0, 0)) == NULL)
{
return FALSE;
}
// 设置第一行View
m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CToolBarTestView), CSize(200,200), pContext);
m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CToolBarTestView), CSize(600,200), pContext);
// 设置第二行View
m_wndSplitter1.CreateView(1, 0, RUNTIME_CLASS(CToolBarTestView), CSize(20,20), pContext);
// 设置第一行高度
CRect rect;
GetClientRect(&rect);
m_wndSplitter1.SetRowInfo(0, rect.Height() * 2 / 3, 0);
return TRUE;
}
3、获取指定的View实例:
CToolBarTestView* pTestView = (CToolBarTestView*)this->m_wndSplitter.GetPane(0, 1); // 第一行第二列
if (pTestView)
{
return;
}
4、m_wndSplitter.CreateView可创建自定义的各种View,例如:CTreeView、CListView、CRichEditView等等
相关文章推荐
- MFC CSplitterWnd 静态分割窗口
- CSplitterWnd类分割MFC单文档应用程序窗口
- CSplitterWnd窗口分割之——静态分割(一)
- CSplitterWnd分割窗口的有关问题
- CSplitterWnd窗口分割之——动态静态嵌套分割(二)
- 窗口分割 CSplitterWnd
- MFC CSplitterWnd 静态分割窗口
- MFC CSplitterWnd窗口分割
- 使用CSplitterWnd类分割窗口
- 使用CSplitterWnd类作窗口分割
- 使用CSplitterWnd分割View窗口
- 用CSplitterWnd类创建分割窗口
- WPF-GRID分割多窗口 用Grid和GridSplitter布局和分割WPF窗口
- 转 使用CSplitterWnd分割窗口
- CSplitterWnd切分窗口
- 【CSplitterWnd技巧一】改变分割窗口拖动条的大小
- 分割窗口QSplitter
- Qt布局管理: 分割窗口QSplitter类讲解(纯代码实现分割窗口)
- 【CSplitterWnd技巧二】使分割窗口不能改变大小
- 【Qt】之 Splitter分割窗口