在单文档中插入对话框的操作
由于需要在单文档中输入东西,所以学习一下视图分割的些许内容。
1.首先,在MainFrm.h中插入CsplitterWnd m_splitter;
-
protected: // 控件条嵌入成员
-
CToolBar m_wndToolBar;
-
CStatusBar m_wndStatusBar;
-
CSplitterWnd m_splitter;
-
// 生成的消息映射函数
2.接下就是添加对话框了,打开资源视图。右键选择Dialog,插入Dialog。
接着会产生一个对话框,在属性中将对话框的style设为child。
3.为对话框添加类,右键单击对话框,选择添加类。类名自己随意输入,不过基类一定要选择CFormView。
4.接着就是将对话框添加到视图中去了。如果你在新建mfc时选择了拆分窗口,在Mainfrm中会有一个OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)函 数。这是一个虚函数,没有的话可以通过类向导添加。在Mainfrm.cpp中加入几个头文件。
-
#include "MFCApplication1Doc.h"
-
#include "MFCApplication1View.h"
-
#include "Control.h"//新建立的对话框类
5.重载OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
-
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs,
-
CCreateContext* pContext)
-
{
-
if (!m_splitter.CreateStatic(this, 1, 2))//一行两列
-
return false;
-
m_splitter.CreateView(0, 0, RUNTIME_CLASS(CMFCApplication1View), CSize(600, 100), pContext);
-
m_splitter.CreateView(0, 1, RUNTIME_CLASS(Control), CSize(100, 100), pContext);
-
return true;
-
}
6.