手动创建CFormView视图

通过VC2010向导创建一个标准的MFC单文档框架,去掉文档/视图结构支持。然后,在资源中插入一个FormView窗口,在MainFrame的Create中创建并显示此视图窗口。
	CView *pView = (CMainView *)(RUNTIME_CLASS(CMainView)->CreateObject());
	if(!pView)
	{
		MessageBox(_T("创建视图不成功!"));
		return 0;
	}

	CRect crt;
	CCreateContext Cnt;
	GetClientRect(crt);
	Cnt.m_pCurrentDoc = NULL;//GetDocument();
	pView->Create(NULL, NULL, AFX_WS_DEFAULT_VIEW, crt, this, IDD_FORMVIEW, &Cnt);
	pView->ShowWindow(SW_SHOWNORMAL);
	pView->MoveWindow(&crt); 
添加的FormView窗口的ID为IDD_FORMVIEW,添加的类为:CMainView
VC2010创建向导设置如下图:
手动创建CFormView视图_第1张图片
去掉视图窗口下凹风格,如下图:
BOOL CMainView::PreCreateWindow(CREATESTRUCT& cs)
{
	// TODO: 在此添加专用代码和/或调用基类
    cs.style &= ~WS_BORDER; /* 去除视图凹陷效果 */
	return CFormView::PreCreateWindow(cs);
}
注意,修改MainFrame中的OnCmdMsg,OnSetFocus函数中的变量

你可能感兴趣的:(手动创建CFormView视图)