《框架窗口界面設(shè)計(jì)》PPT課件

《框架窗口界面設(shè)計(jì)》PPT課件

ID:39590378

大?。?11.10 KB

頁(yè)數(shù):58頁(yè)

時(shí)間:2019-07-06

《框架窗口界面設(shè)計(jì)》PPT課件_第1頁(yè)
《框架窗口界面設(shè)計(jì)》PPT課件_第2頁(yè)
《框架窗口界面設(shè)計(jì)》PPT課件_第3頁(yè)
《框架窗口界面設(shè)計(jì)》PPT課件_第4頁(yè)
《框架窗口界面設(shè)計(jì)》PPT課件_第5頁(yè)
資源描述:

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

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

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

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

4、ldWndCMDIFrameWndCMiniFrameWnd6.1框架窗口項(xiàng)目的文件組織項(xiàng)目中源文件都是采用文件夾的方式進(jìn)行管理的,將項(xiàng)目名作為文件夾名,此文件夾下包含源程序代碼文件、項(xiàng)目文件以及項(xiàng)目工作區(qū)文件等。每一個(gè)類(lèi)的源代碼均保存同名的h和cpp文件。其他一些文件類(lèi)型的含義:.opt關(guān)于開(kāi)發(fā)環(huán)境的參數(shù)文件,如工具條位置等信息.aps(AppStudioFile)資源輔助文件,二進(jìn)制格式.clwClassWizard信息文件.dsp(DeveloperStudioProject)項(xiàng)目文件.plg

5、編譯信息文件.mdp(MicrosoftDevStudioProject)舊版本的項(xiàng)目文件.bsc用于瀏覽項(xiàng)目信息.map執(zhí)行文件的映像信息紀(jì)錄文件.pch(Pre-CompiledFile)預(yù)編譯文件,可以加快編譯速度,但是文件非常大.pdb(ProgramDatabase)記錄程序有關(guān)的一些數(shù)據(jù)和調(diào)試信息.ncb無(wú)編譯瀏覽文件(nocompilebrowser)還有相應(yīng)的Debug(調(diào)試)、Res(資源)等子文件夾。用應(yīng)用程序向?qū)?chuàng)建項(xiàng)目時(shí),系統(tǒng)自動(dòng)為項(xiàng)目創(chuàng)建Win32Debug版本的運(yùn)行程序,

6、并使用相應(yīng)的默認(rèn)配置。程序編連后,用于該項(xiàng)目的可執(zhí)行文件以及其他調(diào)試的信息文件都安放在Debug文件夾中。程序項(xiàng)目有一個(gè)Win32Release版本,與Release的區(qū)別在于:Debug版本的運(yùn)行程序有相應(yīng)的調(diào)試信息碼,Release版本的運(yùn)行程序沒(méi)有,但Release版本的運(yùn)行程序經(jīng)過(guò)代碼的優(yōu)化,其程序的運(yùn)行效率被最大提升。選擇“編譯”?“配置”菜單命令,在“配置”對(duì)話框?qū)㈨?xiàng)目設(shè)置成Win32Release版本。6.1框架窗口主框架窗口和文檔窗口主框架窗口是直接放置在桌面(DeskTop)上的那

7、個(gè)窗口,每個(gè)應(yīng)用程序只能有一個(gè)主框架窗口。主框架窗口負(fù)責(zé)管理各個(gè)用戶交互對(duì)象并根據(jù)用戶操作相應(yīng)地創(chuàng)建或更新文檔窗口及其視圖。文檔窗口對(duì)SDI程序來(lái)說(shuō),和主框架窗口是一致的,主框架窗口就是文檔窗口;對(duì)于MDI程序,文檔窗口是主框架窗口的子窗口,如圖。文檔窗口一般都有相應(yīng)的可見(jiàn)邊框,它的客戶區(qū)(除了窗口標(biāo)題欄、邊框外的區(qū)域)是由相應(yīng)的視圖來(lái)構(gòu)成的,因此可以說(shuō)視圖是文檔窗口內(nèi)的子窗口。文檔窗口時(shí)刻跟蹤當(dāng)前處于活動(dòng)狀態(tài)的視圖的變化,并將用戶或系統(tǒng)產(chǎn)生的消息傳遞給當(dāng)前活動(dòng)視圖。6.1框架窗口6.1.2窗口狀態(tài)

8、的改變MFCAppWizard為每個(gè)窗口設(shè)置了相應(yīng)的大小和位置。運(yùn)行程序時(shí),會(huì)自動(dòng)調(diào)用框架內(nèi)部的WinMain函數(shù),并自動(dòng)查找該應(yīng)用程序類(lèi)的全局變量theApp,然后自動(dòng)調(diào)用用戶應(yīng)用程序類(lèi)的虛函數(shù)InitInstance,該函數(shù)會(huì)進(jìn)一步調(diào)用相應(yīng)的函數(shù)來(lái)完成主窗口的構(gòu)造和顯示工作,代碼:BOOLCEx_SDIApp::InitInstance(){…m_pMainWnd->ShowWindow(SW_SHOW);//顯示窗口m_pMainWnd->UpdateWindo

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

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

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