使用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)目"對話框。
(2) 在左側(cè)的"項(xiàng)目類型"窗格中,選中"Visual C++ 項(xiàng)目"。在右側(cè)的"模板"窗格中,拖動窗格右側(cè)的滾動條顯示其他模板,然后選中"MFC應(yīng)用程序"。
(3) 在"名稱"文本框中,輸入項(xiàng)目名稱TextViewer。
(4) 單擊"確定"按鈕 ,彈出"MFC應(yīng)用程序向?qū)?對話框。
(5) 單擊左側(cè)的"應(yīng)用程序類型",出現(xiàn)如圖6所示的頁面。在這里,我們可以選擇不同的應(yīng)用程序類型、項(xiàng)目樣式以及MFC使用的是靜態(tài)還是共享DLL(Dynamic Link Library,動態(tài)鏈接庫)。需要說明的是,一定要選中"文檔/視圖結(jié)構(gòu)支持",否則文檔程序中常用的磁盤文件的打開、保存以及文檔和視圖的相互作用等功能都需要用戶來實(shí)現(xiàn)。
圖6 應(yīng)用程序類型
需要說明的是:在MFC應(yīng)用程序框架中,最基本的四種應(yīng)用程序類型有:單文檔、多文檔、多頂級文檔和基于對話框的應(yīng)用程序。
單文檔應(yīng)用程序是類似于Windows記事本的程序,它的功能比較簡單,每次只能打開和處理一個(gè)文檔。它的復(fù)雜程度適中,雖然每次只能處理一個(gè)文檔,但已能滿足一般工程上的需要。因此,大多數(shù)Windows桌面應(yīng)用程序的編制都是從單文檔程序框架開始的。
基于對話框的程序最簡單,也最緊湊的。它沒有菜單、工具欄及狀態(tài)欄,也不能處理文檔,但它的好處是速度快,代碼少,程序員所花費(fèi)的開發(fā)和調(diào)試時(shí)間短。
多文檔應(yīng)用程序,顧名思義,能允許同時(shí)打開和處理多個(gè)文檔。它增加了許多功能,因而需要大量額外的編程工作。
多頂級文檔應(yīng)用程序與多文檔應(yīng)用程序功能相似。所不同的是,多文檔應(yīng)用程序打開的多個(gè)文檔出現(xiàn)在同一個(gè)窗口的客戶區(qū)內(nèi),而多頂級文檔應(yīng)用程序打開的多個(gè)文檔出現(xiàn)桌面上,每個(gè)文檔都會在任務(wù)欄上有其相應(yīng)的工具條,這與Microsoft Office 2000/XP的文檔操作相同。
(6) 選中"單文檔",單擊左側(cè)的"用戶界面功能",彈出如圖7所示的頁面。在這里我們可以改變對浮動工具條、主框架和子框架窗口的樣式等特性的支持。
圖7 用戶界面功能
(7) 單擊左側(cè)的"高級功能",彈出如圖8所示的頁面。在這里我們可以改變對添加對上下文幫助、自動化、打印與預(yù)覽、通信等特性的支持,以及設(shè)置最近文件列表中的文件數(shù)。
圖8 高級功能
(8) 單擊左側(cè)的"生成的類",彈出如圖9所示的頁面。在這里我們可以改變對對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ū)е?,除了前面到的特性外,還對"數(shù)據(jù)庫"以及資源模板字符串和復(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ù)是如何讀取并顯示的。