VC小技能匯總之窗口技能。本站提示廣大學習愛好者:(VC小技能匯總之窗口技能)文章只能為提供參考,不一定能成為您想要的結果。以下是VC小技能匯總之窗口技能正文
本文匯集匯總了VC小技能的窗口技能,關於VC法式開辟的窗口設計而言有必定的自創價值,概況以下:
1.讓窗口一啟動就最年夜化
把運用法式類(CxxxApp)的 InitInstance() 函數中的
m_pMainWnd->ShowWindow(SW_SHOW);
改成
m_pMainWnd->ShowWindow(SW_SHOWMAXIMIZED);
則窗口一啟動就最年夜化顯示。
2.若何設置窗口的初始尺寸
在將運用法式類(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;
}
3.讓窗口居中顯示
以下兩種辦法可任選其一:
①在運用法式類(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 don't want the toolbar to
// be dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);
CenterWindow( GetDesktopWindow() ); //使窗口翻開時處於屏幕正中
return 0;
}
4.若何修正窗口題目
窗口題目普通情勢為:文檔題目 - 法式題目
(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;
}
以上兩點比擬實用於視圖-文檔構造的法式,在新建文檔時,體系會主動運轉OnNewDocument()函數,在個中可以設置適合的題目。關於未采取文檔的法式可以用上面的辦法修正題目:
(3)修正窗口題目:
修正窗口題目普通在翻開文件函數OnFileOpen()和另存為函數OnFileSaveAs()中停止,可使用上面的函數:
AfxGetMainWnd()->SetWindowText("文檔題目"+" - "+"法式題目");
個中文檔題目和法式題目可以使用界說過的串變量。