您的位置:首页 > 其它

使用MFC创建一个分隔的窗口的步骤

2012-10-11 23:37 519 查看
使用MFC创建一个分隔的窗口的方法是使用CSplitterWnd类,调用CSpitterWnd::CreateStatic()函数创建分隔窗口,通过CSpitterWnd::CreateView()为分隔的每一个窗口制定一个View类的视图。

本例创建一个左1右2的分隔窗口程序,具体的步骤如下:

1、新建一个单文档应用程序SpitterWndDemo。

2、在“MainFrm.h”(主框窗口类的头文件)中加入:

CSplitterWnd m_splitterWnd1;
CSplitterWnd m_splitterWnd2;

3、新建两个继承自CView类的自定义类如CLeftView和CRootView。

4、在CMainFrame类里重写一个虚拟函数BOOL CMainFrame::OnCreateClient()

if (!m_splitterWnd1.CreateStatic(this, 1, 2))
return FALSE;

if (!m_splitterWnd1.CreateView(0, 0, RUNTIME_CLASS(CLeftView), CSize(100, 100), pContext))
{
m_splitterWnd1.DestroyWindow();
return FALSE;
}

if (!m_splitterWnd2.CreateStatic(&m_splitterWnd1, 2, 1,WS_CHILD|WS_VISIBLE,m_splitterWnd1.IdFromRowCol(0,1)))
return FALSE;

if (!m_splitterWnd2.CreateView(0, 0, RUNTIME_CLASS(CSpilterWndDemo3View), CSize(100, 300), pContext) ||
!m_splitterWnd2.CreateView(1, 0, RUNTIME_CLASS(CRootView), CSize(100, 100), pContext))
{
m_splitterWnd2.DestroyWindow();
return FALSE;
}
//return CFrameWnd::OnCreateClient(lpcs, pContext);
return TRUE;

注意要将自带的return CFrameWnd::OnCreateClient(lpcs, pContext);注释起来,后面加上return TRUE;

5、编译运行后

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐