使用MFC應(yīng)用程序向?qū)?br>
事實(shí)上,,在Visual C++ .NET中,,我們不需要輸入上述程序代碼,甚至不需要輸入一句代碼就能創(chuàng)建所需要的應(yīng)用程序,,這就是MFC各種項(xiàng)目模板中的應(yīng)用程序向?qū)?MFC AppWizard)的功能,,如下面的過程。
(1) 單擊"開始"頁面中的"新建項(xiàng)目",,或者打開"文件"菜單中的"新建",,選擇"項(xiàng)目"命令,都將彈出"新建項(xiàng)目"對(duì)話框,。
(2) 在左側(cè)的"項(xiàng)目類型"窗格中,,選中"Visual C++ 項(xiàng)目"。在右側(cè)的"模板"窗格中,,拖動(dòng)窗格右側(cè)的滾動(dòng)條顯示其他模板,,然后選中"MFC應(yīng)用程序"。
(3) 在"名稱"文本框中,,輸入項(xiàng)目名稱TextViewer,。
(4) 單擊"確定"按鈕 ,彈出"MFC應(yīng)用程序向?qū)?對(duì)話框,。
(5) 單擊左側(cè)的"應(yīng)用程序類型",,出現(xiàn)如圖6所示的頁面。在這里,,我們可以選擇不同的應(yīng)用程序類型,、項(xiàng)目樣式以及MFC使用的是靜態(tài)還是共享DLL(Dynamic Link Library,動(dòng)態(tài)鏈接庫(kù)),。需要說明的是,,一定要選中"文檔/視圖結(jié)構(gòu)支持",否則文檔程序中常用的磁盤文件的打開,、保存以及文檔和視圖的相互作用等功能都需要用戶來實(shí)現(xiàn),。
圖6 應(yīng)用程序類型
需要說明的是:在MFC應(yīng)用程序框架中,最基本的四種應(yīng)用程序類型有:?jiǎn)挝臋n,、多文檔,、多頂級(jí)文檔和基于對(duì)話框的應(yīng)用程序。
單文檔應(yīng)用程序是類似于Windows記事本的程序,,它的功能比較簡(jiǎn)單,,每次只能打開和處理一個(gè)文檔。它的復(fù)雜程度適中,雖然每次只能處理一個(gè)文檔,,但已能滿足一般工程上的需要,。因此,大多數(shù)Windows桌面應(yīng)用程序的編制都是從單文檔程序框架開始的,。
基于對(duì)話框的程序最簡(jiǎn)單,,也最緊湊的。它沒有菜單,、工具欄及狀態(tài)欄,,也不能處理文檔,但它的好處是速度快,,代碼少,,程序員所花費(fèi)的開發(fā)和調(diào)試時(shí)間短。
多文檔應(yīng)用程序,,顧名思義,,能允許同時(shí)打開和處理多個(gè)文檔。它增加了許多功能,,因而需要大量額外的編程工作,。
多頂級(jí)文檔應(yīng)用程序與多文檔應(yīng)用程序功能相似。所不同的是,,多文檔應(yīng)用程序打開的多個(gè)文檔出現(xiàn)在同一個(gè)窗口的客戶區(qū)內(nèi),,而多頂級(jí)文檔應(yīng)用程序打開的多個(gè)文檔出現(xiàn)桌面上,每個(gè)文檔都會(huì)在任務(wù)欄上有其相應(yīng)的工具條,,這與Microsoft Office 2000/XP的文檔操作相同,。
(6) 選中"單文檔",單擊左側(cè)的"用戶界面功能",,彈出如圖7所示的頁面,。在這里我們可以改變對(duì)浮動(dòng)工具條、主框架和子框架窗口的樣式等特性的支持,。
圖7 用戶界面功能
(7) 單擊左側(cè)的"高級(jí)功能",彈出如圖8所示的頁面,。在這里我們可以改變對(duì)添加對(duì)上下文幫助,、自動(dòng)化、打印與預(yù)覽,、通信等特性的支持,,以及設(shè)置最近文件列表中的文件數(shù)。
圖8 高級(jí)功能
(8) 單擊左側(cè)的"生成的類",,彈出如圖9所示的頁面,。在這里我們可以改變對(duì)對(duì)MFC 應(yīng)用程序向?qū)峁┑哪J(rèn)類名、基類,、各個(gè)源文件名進(jìn)行修改,。
圖9 生成的類
(9) 單擊"完成"按鈕,,一個(gè)單文檔應(yīng)用程序項(xiàng)目TextViewer就創(chuàng)建好了。運(yùn)行程序,,結(jié)果如圖10所示,。
圖10 項(xiàng)目TextViewer運(yùn)行的結(jié)果
結(jié)束語
在向?qū)е校饲懊娴降奶匦酝?,還對(duì)"數(shù)據(jù)庫(kù)"以及資源模板字符串和復(fù)合文檔的支持等,。總之,,使用項(xiàng)目模板的MFC應(yīng)用程序向?qū)Э梢詣?chuàng)建最常用的應(yīng)用程序類型,。當(dāng)然,向?qū)?chuàng)建的應(yīng)用程序中的各個(gè)類之間還存在著緊密聯(lián)系,,在下一講中,,我們將根據(jù)各個(gè)類的關(guān)聯(lián)機(jī)制,討論文檔數(shù)據(jù)是如何讀取并顯示的,。