MFC中 创建基于CFormView的文档视图程序
在MFC中可以创建多种类型的窗口程序,如对话框程序、单文档结构程序(非文档/视图结构)、单文档(文档/视图结构)以及多文档视图结构程序等。cformview
在编写一般的小工具时,我们的首选显然是对话框程序,不过基于对话框的程序不支持视图类,有些功能实现起来会麻烦许多。此时我们可以使用CFormView作为基类来创建单文档(非文档/视图结构)和单文档(文档/视图结构)的程序。
一、使用MFC向导创建程序

(1)单文档(文档/视图结构)

(2)不需要状态栏和工具栏

(3)使用CFormView作为基类

(4)使用向导创建好的程序窗口
二、程序初始化设置
在这个由MFC向导创建的程序窗口中有些功能或许是我们不想要的,比如视图标题、视图凹陷效果、菜单栏、鼠标拖动窗口边框调整窗口大小等。cformview
1.不显示视图标题、禁止以拖动方式调整窗口大小、禁用菜单栏
BOOLCMainFrame::PreCreateWindow(CREATESTRUCT&cs)
{
if(!CFrameWnd::PreCreateWindow(cs))
returnFALSE;
//TODO:在此处通过修改
//CREATESTRUCTcs来修改窗口类或样式
cs.style&=~FWS_ADDTOTITLE;/*不显示视图标题*/
cs.style&=~WS_THICKFRAME;/*禁止以拖动方式调整窗口大小*/
cs.hMenu=NULL;
returnTRUE;
}
2.去除视图凹陷效果
BOOLCTestView::PreCreateWindow(CREATESTRUCT&cs)
{
//TODO:在此处通过修改
//CREATESTRUCTcs来修改窗口类或样式
cs.style&=~WS_BORDER;/*去除视图凹陷效果*/
returnCFormView::PreCreateWindow(cs);
}
3.修改程序窗口标题
BOOLCTestApp::InitInstance()
{
....
....
....
m_pMainWnd->SetWindowText(L"测试程序");/*修改程序窗口标题*/
//唯一的一个窗口已初始化,因此显示它并对其进行更新
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();
//仅当具有后缀时才调用DragAcceptFiles
//在SDI应用程序中,这应在ProcessShellCommand之后发生
returnTRUE;
}
经过以上几步的设置,程序界面就基本符合我们的需求了。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-32923-1.html
1800~1900两千往上的风险比较大
#易烊千玺#加油