通过VC2010向导创建一个标准的MFC单文档框架,去掉文档/视图结构支持。然后,在资源中插入一个FormView窗口,在MainFrame的Create中创建并显示此视图窗口。
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; pView = (CMainView *)(RUNTIME_CLASS(CMainView)->CreateObject()); if(!pView) { MessageBox(_T("创建视图不成功!")); return 0; } CRect crt; CCreateContext Cnt; GetClientRect(crt); Cnt.m_pCurrentDoc = NULL;//GetDocument(); //创建新添加的视图,资源ID为:IDD_FORMVIEW pView->Create(NULL, NULL, AFX_WS_DEFAULT_VIEW, crt, this, IDD_FORMVIEW, &Cnt); pView->ShowWindow(SW_SHOWNORMAL); pView->MoveWindow(&crt); //---------------------------------------------------------------------- if (!m_wndStatusBar.Create(this)) { TRACE0("未能创建状态栏\n"); return -1; // 未能创建 } m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT)); return 0; }
去掉视图窗口下凹风格,如下图:
BOOL CMainView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: 在此添加专用代码和/或调用基类 cs.style &= ~WS_BORDER; /* 去除视图凹陷效果 */ return CFormView::PreCreateWindow(cs); }
注意,修改MainFrame中的OnCmdMsg,OnSetFocus函数中的视图变量
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。