问题描述
SDI单文档视图,采用基于CFormView的视图,如何在程序初始化和运行中手动设置mainFrame和View的大小?我在BOOLCMainFrame::PreCreateWindow(CREATESTRUCT&cs){if(!CFrameWnd::PreCreateWindow(cs))returnFALSE;//TODO:在此处通过修改//CREATESTRUCTcs来修改窗口类或样式cs.cx=1280;cs.cy=1024;returnTRUE;}不起作用,显示的大小和对话框的模板资源一样.
解决方案
解决方案二:
我自己摸索了个方法::OnInitialUpdate(){CFormView::OnInitialUpdate();GetParentFrame()->RecalcLayout();SetScrollSizes(MM_TEXT,CSize(800,600));ResizeParentToFit();}这是设置初始化大小的,运行中的还没试.
解决方案三:
或者将ResizeParentToFit();注释掉:OnInitialUpdate(){CFormView::OnInitialUpdate();GetParentFrame()->RecalcLayout();//ResizeParentToFit();}则初始化的窗口大小可以如下设置BOOLCMainFrame::PreCreateWindow(CREATESTRUCT&cs){if(!CFrameWnd::PreCreateWindow(cs))returnFALSE;//TODO:在此处通过修改//CREATESTRUCTcs来修改窗口类或样式cs.cx=1280;cs.cy=1024;returnTRUE;}