mfc框架窗口界面設(shè)計

mfc框架窗口界面設(shè)計

ID:26615033

大?。?.26 MB

頁數(shù):58頁

時間:2018-11-28

mfc框架窗口界面設(shè)計_第1頁
mfc框架窗口界面設(shè)計_第2頁
mfc框架窗口界面設(shè)計_第3頁
mfc框架窗口界面設(shè)計_第4頁
mfc框架窗口界面設(shè)計_第5頁
資源描述:

《mfc框架窗口界面設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第6章框架窗口界面設(shè)計6.1框架窗口6.2菜單6.3工具欄6.4狀態(tài)欄6.5交互對象的動態(tài)更新6.6圖標和光標6.1框架窗口6.1.1單文檔和多文檔程序框架窗口文檔應(yīng)用程序的MFC類結(jié)構(gòu)如圖是單文檔應(yīng)用程序Ex_SDI和多文檔應(yīng)用程序Ex_MDI的MFC類結(jié)構(gòu)。CAboutDlg是每一個應(yīng)用程序框架都有的,用來顯示本程序的有關(guān)信息。CEx_SDIApp和CEx_MDIApp是應(yīng)用程序類,是從CWinApp類派生而來,負責應(yīng)用程序創(chuàng)建、運行和終止,每一個應(yīng)用程序都需要這樣的類。CEx_SDIDoc和CEx_MDIDoc是文檔類

2、,它們是從CDocument類派生而來,負責應(yīng)用程序文檔數(shù)據(jù)管理。CEx_SDIView和CEx_MDIView是視圖類,它們既可以從基類CView派生,也可以從CView派生類派生,負責數(shù)據(jù)的顯示、繪制和其他用戶交互。CMainFrame類是用來負責主框架窗口的顯示和管理,包括工具欄和狀態(tài)欄等界面元素的初始化。對于單文檔應(yīng)用程序來說,主框架窗口類是從CFrameWnd派生而來的,而對于多文檔應(yīng)用程序程序,主框架窗口是從CMDIFrameWnd派生的。6.1框架窗口CChildFrame類是從CMDIChildWnd派生而來

3、,專門用來管理多文檔應(yīng)用程序中的文檔窗口。無論是CMDIChildWnd還是CMDIFrameWnd類,它們都是從CFrameWnd派生而來的。對于基于對話框的應(yīng)用程序,一般有CAboutDlg類、應(yīng)用程序類和對話框類。上述MFC類之間的繼承和派生關(guān)系如圖6.2所示。圖6.2MFC類的基本層次結(jié)構(gòu)CCmdTargetCWndCDocumentCFrameWndCObjectCWinTreadCWinAppCViewCDialog及控件CMDIChildWndCMDIFrameWndCMiniFrameWnd6.1框架窗口項目

4、的文件組織項目中源文件都是采用文件夾的方式進行管理的,將項目名作為文件夾名,此文件夾下包含源程序代碼文件、項目文件以及項目工作區(qū)文件等。每一個類的源代碼均保存同名的h和cpp文件。其他一些文件類型的含義:.opt關(guān)于開發(fā)環(huán)境的參數(shù)文件,如工具條位置等信息.aps(AppStudioFile)資源輔助文件,二進制格式.clwClassWizard信息文件.dsp(DeveloperStudioProject)項目文件.plg編譯信息文件.mdp(MicrosoftDevStudioProject)舊版本的項目文件.bsc用于瀏

5、覽項目信息.map執(zhí)行文件的映像信息紀錄文件.pch(Pre-CompiledFile)預(yù)編譯文件,可以加快編譯速度,但是文件非常大.pdb(ProgramDatabase)記錄程序有關(guān)的一些數(shù)據(jù)和調(diào)試信息.ncb無編譯瀏覽文件(nocompilebrowser)還有相應(yīng)的Debug(調(diào)試)、Res(資源)等子文件夾。用應(yīng)用程序向?qū)?chuàng)建項目時,系統(tǒng)自動為項目創(chuàng)建Win32Debug版本的運行程序,并使用相應(yīng)的默認配置。程序編連后,用于該項目的可執(zhí)行文件以及其他調(diào)試的信息文件都安放在Debug文件夾中。程序項目有一個Win32

6、Release版本,與Release的區(qū)別在于:Debug版本的運行程序有相應(yīng)的調(diào)試信息碼,Release版本的運行程序沒有,但Release版本的運行程序經(jīng)過代碼的優(yōu)化,其程序的運行效率被最大提升。選擇“編譯”?“配置”菜單命令,在“配置”對話框?qū)㈨椖吭O(shè)置成Win32Release版本。6.1框架窗口主框架窗口和文檔窗口主框架窗口是直接放置在桌面(DeskTop)上的那個窗口,每個應(yīng)用程序只能有一個主框架窗口。主框架窗口負責管理各個用戶交互對象并根據(jù)用戶操作相應(yīng)地創(chuàng)建或更新文檔窗口及其視圖。文檔窗口對SDI程序來說,和主框

7、架窗口是一致的,主框架窗口就是文檔窗口;對于MDI程序,文檔窗口是主框架窗口的子窗口,如圖。文檔窗口一般都有相應(yīng)的可見邊框,它的客戶區(qū)(除了窗口標題欄、邊框外的區(qū)域)是由相應(yīng)的視圖來構(gòu)成的,因此可以說視圖是文檔窗口內(nèi)的子窗口。文檔窗口時刻跟蹤當前處于活動狀態(tài)的視圖的變化,并將用戶或系統(tǒng)產(chǎn)生的消息傳遞給當前活動視圖。6.1框架窗口6.1.2窗口狀態(tài)的改變MFCAppWizard為每個窗口設(shè)置了相應(yīng)的大小和位置。運行程序時,會自動調(diào)用框架內(nèi)部的WinMain函數(shù),并自動查找該應(yīng)用程序類的全局變量theApp,然后自動調(diào)用用戶應(yīng)用

8、程序類的虛函數(shù)InitInstance,該函數(shù)會進一步調(diào)用相應(yīng)的函數(shù)來完成主窗口的構(gòu)造和顯示工作,代碼:BOOLCEx_SDIApp::InitInstance(){…m_pMainWnd->ShowWindow(SW_SHOW);//顯示窗口m_pMainWnd->UpdateWindo

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。