下载地址:https://download.csdn.net/download/shuails/10905766
1.新建MFC工程选择单文本程序,完成,运行如下图:
2.建立一个Dialog作为分割显示的一部分:在Resource->Dialog->Insert Dialog并将默认创建的按钮删除(添加完成后此按钮无功能),新建两个Button,ID为Button1,Button2
3.修改Dialog ID,并添加对应的类:右键->属性->ID改为IDD_DIALOG_TEST,在Styles中将Style改为Child,将Border改为None
4.右键->ClassWizard或者从菜单栏View->ClassWizard(快捷键Ctrl+W),Creat a new class,命名为CTestDialog,基类选择CFormView
5.在MainFrm.h中定义分割类的对象:
CSplitterWnd m_Splitter;
5.通过类向导:View->ClassWizard(快捷键Ctrl+W)添加OnCreateClient函数,在函数中实现分割功能
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
if (!m_Splitter.CreateStatic(this, 1, 2))
return false;
m_Splitter.CreateView(0, 0, RUNTIME_CLASS(CMySingleTestView), CSize(600, 100), pContext);
m_Splitter.CreateView(0, 1, RUNTIME_CLASS(CTestDialog), CSize(100, 100), pContext);
return true;
}
6.运行界面如下:
7.通过CreateView函数的第二个变量可以改变左右位置的顺序,交换左右顺序后:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
if (!m_Splitter.CreateStatic(this, 1, 2))
return false;
m_Splitter.CreateView(0, 1, RUNTIME_CLASS(CMySingleTestView), CSize(600, 100), pContext);
m_Splitter.CreateView(0, 0, RUNTIME_CLASS(CTestDialog), CSize(100, 100), pContext);
return true;
}
界面如下: