1. 修改PreCreateWindow()函数如下:
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE;
cs.dwExStyle &= ~WS_EX_CLIENTEDGE;
cs.style &= ~WS_MAXIMIZEBOX; //禁止窗口最大化
cs.style &= ~WS_MINIMIZEBOX; //禁止窗口最小化
// cs.style &= ~WS_SYSMENU; //取消Title上的按钮
cs.style &= ~WS_THICKFRAME;//使窗口不能用鼠标改变大小
cs.lpszClass = AfxRegisterWndClass(0);
return TRUE;
}
2.VC2010 MFC 改变窗口默认大小
2.1.因为VS2010会将一些信息写入注册表,这个和之前VS2005,VS2008(SP1除外)不太一样,默认的SDI和MDI是带的BCG的一些东西。
你要修改窗口大小,可以直接在App类的InitInstance中ShowWindow();UpdateWindow()之前修改窗口大小,例如 m_pMainWnd->MoveWindow(CRect(100, 100, 600, 400), FALSE);
2.2 MFC的应用程序向导在VC6.0中和VS2010中有很多区别。VS2010的中的MFC的应用程序向导增加了不少新的选项。默认情况下建立MFC应用程序,就会出现在PreCreateWindow()中修改cx、cy窗口大小不变的情况,在VS2010的MFC的应用程序向导的第二步选择MFC标准,第6步选择使用经典菜单。其效果即和VC6.0产生的效果一样。
综上:
在App类得InitInstance中写入下面的代码:
m_pMainWnd ->MoveWindow(100, 50, 1100, 550, FALSE);
即可完成对默认窗口大小的修改