VC编程小技巧.doc
文本预览下载声明
窗口篇 让窗口一启动就最大化
把应用程序类(CxxxApp)的 InitInstance() 函数中的m_pMainWnd-ShowWindow(SW_SHOW);?改为m_pMainWnd-ShowWindow(SW_SHOWMAXIMIZED);则窗口一启动就最大化显示。
如何设置窗口的初始尺寸
在将应用程序类(CxxAPP)的 InitInstance() 函数中加入:m_pMainWnd-SetWindowPos(NULL,x,y,Width,Height,SWP_NOMOVE);Width为窗口宽度,Height为窗口高度SWP_NOMOVE表示忽略位置(x,y)。
如:BOOL?CDzyApp::InitInstance(){????AfxEnableControlContainer();?????……?????//?The?one?and?only?window?has?been?initialized,?so?show?and?update?it.????m_pMainWnd-SetWindowPos(NULL,0,0,750,555,SWP_NOMOVE);//设置窗口的初始大小为750*555????m_pMainWnd-ShowWindow(SW_SHOW);?????m_pMainWnd-UpdateWindow();?????return?TRUE;?}
让窗口居中显示
以下两种方法可任选其一:
①在应用程序类(CxxxApp)的 InitInstance() 函数中加入:m_pMainWnd-CenterWindow( GetDesktopWindow() );
②在主框架类(MainFrm.cpp)的OnCreate()函数中加入:CenterWindow( GetDesktopWindow() );
如:
int?CMainFrame::OnCreate(LPCREATESTRUCT?lpCreateStruct)?{?????if?(CFrameWnd::OnCreate(lpCreateStruct)?==?-1)?????return?-1;?????……?????//?TODO:?Delete?these?three?lines?if?you?dont?want?the?toolbar?to?????//?be?dockable?????m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);?????EnableDocking(CBRS_ALIGN_ANY);?????DockControlBar(m_wndToolBar);?????CenterWindow(?GetDesktopWindow()?);?//使窗口打开时处于屏幕正中????return?0;?}
如何修改窗口标题
窗口标题一般形式为:文档标题 - 程序标题
1、设置文档标题:
在文档类(CxxxDoc)的OnNewDocument()函数中加入语句:SetTitle(文档名);
如:TextEditorDoc.cpp:
BOOL?CTextEditorDoc::OnNewDocument()?{?????if?(!CDocument::OnNewDocument())?????????return?FALSE;?????//?TODO:?add?reinitialization?code?here?????//?(SDI?documents?will?reuse?this?document)?????SetTitle(未命名.txt);????//设置文档标题?????return?TRUE;?}
2、设置程序标题:
在框架类(CMainFrame)的PreCreateWindow()函数中加入语句:m_strTitle = _T(程序标题);
如:MainFrm.cpp:
BOOL?CMainFrame::PreCreateWindow(CREATESTRUCT?cs)?{?????if(?!CFrameWnd::PreCreateWindow(cs)?)?????????return?FALSE;?????//?TODO:?Modify?the?Window?class?or?styles?here?by?modifying?????//?the?CREATESTRUCT?cs?????m_strTitle?=?_T(文本整理器);????//设置程序标题?????return?TRUE;?}
以上两点比较适用于视图-文档结构的程序,在新建文档时,系统会自动运行OnN
显示全部