平台:VS2017
功能:创建单文档程序,并将窗口分成左右两个;
1. 在CMainFrame.h中添加一个CSplitterWnd成员:
//MainFrame.h中添加以下内容
public:
CSplitterWnd mSplitWin1;
2 基于CView创建两个新的视图类,CViewLeft,CViewRight;
//ViewLeft.h中添加以下内容
#pragma once
#include"test7201Doc.h" //这一行是手动添加的,需要注意的是,*Doc.h必须在*View.h前面。
#include "test7201View.h"
class CViewLeft :
public Ctest7201View
{
public:
CViewLeft();
~CViewLeft();
};
//ViewLeft.cpp中添加以下内容
#include "stdafx.h"
#include "ViewLeft.h"
CViewLeft::CViewLeft()
{
}
CViewLeft::~CViewLeft()
{
}
//ViewRight.h中添加以下内容
#pragma once
#include"test7201Doc.h" //这一行是手动添加的,需要注意的是,*Doc.h必须在*View.h前面。
#include "test7201View.h"
class CViewRight :
public Ctest7201View
{
public:
CViewRight();
~CViewRight();
};
//ViewRight.cpp中添加以下内容
#include "stdafx.h"
#include "ViewRight.h"
CViewRight::CViewRight()
{
}
CViewRight::~CViewRight()
{
}
3 在MainFrame.cpp中重载CMainFrame的OnCreateClient函数;
//MainFrame.h中添加以下内容
public:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext*pContext);
//MainFrame.cpp中添加以下内容
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext*pContext)
{
// TODO:在此添加专用代码和/或调用基类
mSplitWin1.CreateStatic(this, 1, 2); //创建一个一行二列的分割窗口
mSplitWin1.CreateView(0, 0, RUNTIME_CLASS(CViewLeft),CSize(0, 0),pContext); //建立第0行第0列的视图
mSplitWin1.CreateView(0, 1,RUNTIME_CLASS(CViewRight), CSize(0, 0),pContext); //建立第0行第1列的视图
mSplitWin1.SetColumnInfo(0,250, 10); //设定第0列的宽度
return TRUE;
//returnCFrameWnd::OnCreateClient(lpcs, pContext);
}