Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt

Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt

ID:50030265

大?。?.74 MB

頁數(shù):78頁

時(shí)間:2020-03-07

Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt_第1頁
Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt_第2頁
Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt_第3頁
Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt_第4頁
Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt_第5頁
資源描述:

《Windows程序設(shè)計(jì)教程 教學(xué)課件 作者 郭皞巖 屈景輝 廖琪梅 第11章-文檔視圖界面.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、Windows程序設(shè)計(jì)教程第11章文檔/視圖界面文檔/視圖結(jié)構(gòu)是在VisualC++中,使用MFC開發(fā)基于文檔應(yīng)用程序的基本框架。在這個(gè)框架中,數(shù)據(jù)的維護(hù)及其顯示是分別由兩個(gè)不同的、但又彼此緊密相關(guān)的對(duì)象——文檔和視圖負(fù)責(zé)的。本章將主要圍繞這一結(jié)構(gòu)的各個(gè)環(huán)節(jié)展開討論,理解這一結(jié)構(gòu)的原理和機(jī)制對(duì)基于文檔/視圖結(jié)構(gòu)的MFC應(yīng)用程序開發(fā)具有重要作用?;靖拍?1.1單文檔和多文檔界面應(yīng)用程序的實(shí)現(xiàn)11.2窗口分割與多視11.311.1基本概念可以把文檔看作是數(shù)據(jù)容器,而視圖則可以看作是查看數(shù)據(jù)的窗口或是和數(shù)據(jù)發(fā)生交互

2、的窗口。本節(jié)對(duì)MFC中文檔/視圖結(jié)構(gòu)的概念及其應(yīng)用作進(jìn)一步介紹。11.1.1概述MFC文檔/視圖結(jié)構(gòu)是一種新型的應(yīng)用程序結(jié)構(gòu),它的優(yōu)點(diǎn)主要包括:實(shí)現(xiàn)了數(shù)據(jù)存儲(chǔ)和顯示的分離,提供了常用的標(biāo)準(zhǔn)操作界面,以及支持打印預(yù)覽功能等。一般情況下,采用文檔/視圖結(jié)構(gòu)的應(yīng)用程序至少應(yīng)由以下對(duì)象組成:應(yīng)用程序?qū)ο螅ㄒ话銥镃WinApp派生對(duì)象)、框架窗口對(duì)象(一般為CFrmeWnd派生對(duì)象)、文檔對(duì)象(一般為CDocument派生對(duì)象)、視圖對(duì)象(一般為CView派生對(duì)象)等。除應(yīng)用程序?qū)ο笸猓渌麑?duì)象的關(guān)系如圖11.1所示。圖

3、11.1文檔、視圖以及框架的關(guān)系一個(gè)文檔可以對(duì)應(yīng)多個(gè)不同視圖,而一個(gè)視圖一般只對(duì)應(yīng)一個(gè)文檔。當(dāng)文檔數(shù)據(jù)發(fā)生變化時(shí),視圖顯示的狀態(tài)也會(huì)隨之變化;對(duì)于多個(gè)視圖的情況,基于同一文檔的多個(gè)視圖的顯示同步變化。當(dāng)然,并非所有基于窗口的應(yīng)用都要使用文檔/視圖結(jié)構(gòu),以下兩種情況不宜采用文檔/視圖結(jié)構(gòu):(1)不是面向數(shù)據(jù)的應(yīng)用或數(shù)據(jù)量很少的應(yīng)用,不宜采用文檔/視圖結(jié)構(gòu),如一些工具程序,包括磁盤掃描程序、過程控制程序等;(2)不使用標(biāo)準(zhǔn)的窗口用戶界面的程序,如一些游戲等。11.1.2單文檔界面(SDI)應(yīng)用程序圖11.2單文檔界

4、面程序——NotePad記事本程序11.1.3多文檔界面(MDI)應(yīng)用程序圖11.3多文檔界面程序——VisualC++6.011.2單文檔和多文檔界面應(yīng)用程序的實(shí)現(xiàn)11.2.1利用AppWizard創(chuàng)建單文檔界面應(yīng)用程序框架在前面實(shí)例中多次使用AppWizard創(chuàng)建單文檔界面應(yīng)用程序框架,其各向?qū)нx項(xiàng)采用的是默認(rèn)設(shè)置,本節(jié)將詳細(xì)介紹各向?qū)?duì)話框中選項(xiàng)的含義。1.AppWizard——第1步在【MFCAppWizard-Step1】對(duì)話框中(如圖11.4所示)可以選擇所創(chuàng)建的應(yīng)用程序類型,這里選擇“single

5、document”即單文檔應(yīng)用程序。2.AppWizard——第2步在第2步中,決定應(yīng)用程序是否支持和如何支持?jǐn)?shù)據(jù)庫,如圖11.5所示。圖11.4【MFCAppWizard-Step1】對(duì)話框圖11.5【MFCAppWizard-Step2】對(duì)話框3.AppWizard——第3步在第3步中決定應(yīng)用程序是否支持以及如何支持復(fù)合文檔,還可以選擇是否支持自動(dòng)化(Automation)和ActiveX控件,如圖11.6所示。采用默認(rèn)的選擇:不支持復(fù)合文檔和自動(dòng)化,支持ActiveX控件。圖11.6【MFCAppWiza

6、rd-Step3】對(duì)話框4.AppWizard——第4步在第4步中選擇應(yīng)用程序界面的特性,如圖11.7所示。圖11.7【MFCAppWizard-Step4】對(duì)話框圖11.8【BcumentTemplateStrings】選項(xiàng)卡圖11.9【W(wǎng)indowsstyles】選項(xiàng)卡5.AppWizard——第5步第5步?jīng)Q定AppWizard是否為自動(dòng)生成的代碼添加注釋,默認(rèn)選擇為自動(dòng)生成。另外,還決定如何使用MFC庫,如圖11.10所示。圖11.10【MFCAppWizard-Step3】對(duì)話框應(yīng)用程序可以有兩種方式使

7、用MFC庫:使用MFC動(dòng)態(tài)鏈接庫(AsasharedDLL)和使用MFC靜態(tài)鏈接庫(Asastaticlinkedlibrary)。默認(rèn)選擇為使用MFC動(dòng)態(tài)鏈接庫。6.AppWizard——第6步在第6步中可以指定AppWizard所生成的類的名稱、頭文件和實(shí)現(xiàn)文件名稱和類的基類,如圖11.11所示。圖11.11【MFCAppWizard-Step4】對(duì)話框圖11.12程序運(yùn)行結(jié)果11.2.2程序框架中的主要類及相互關(guān)系文檔/視圖結(jié)構(gòu)的應(yīng)用程序框架中,主要包含5個(gè)類:CWinApp類、CFrameWnd類、CV

8、iew類、CDocument類和CDocTemplate類。(1)CWinApp類為應(yīng)用程序類,它是應(yīng)用程序的起點(diǎn),負(fù)責(zé)應(yīng)用程序的啟動(dòng)。(2)CFrameWnd類為框架窗口類,它是應(yīng)用程序的框架窗口。所謂框架窗口,是指包括菜單、工具欄、狀態(tài)欄和窗口客戶區(qū)的整個(gè)應(yīng)用程序的主窗口。(3)CView類為視圖類,專門用來對(duì)應(yīng)用程序的數(shù)據(jù)進(jìn)行顯示。在視圖類中有一個(gè)很重要的函數(shù)OnDraw(),一

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

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

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(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)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。