基于VB的桌面系統(tǒng)開發(fā)方案T課件_第1頁
基于VB的桌面系統(tǒng)開發(fā)方案T課件_第2頁
基于VB的桌面系統(tǒng)開發(fā)方案T課件_第3頁
基于VB的桌面系統(tǒng)開發(fā)方案T課件_第4頁
基于VB的桌面系統(tǒng)開發(fā)方案T課件_第5頁
已閱讀5頁,還剩94頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

基于VB的桌面系統(tǒng)開發(fā)方案程序的打包和展開81基于VB的桌面系統(tǒng)開發(fā)方案81課題目標學會如何為應用程序創(chuàng)建幫助文件了解What’sThisHelp和ToolTipText屬性的使用區(qū)分P-code(偽代碼)和Nativecode

(本機代碼)兩個編譯選項的不同了解使用打包和開發(fā)向?qū)нM行程序打包和開發(fā)的步驟了解TreeView控件的使用2課題目標學會如何為應用程序創(chuàng)建幫助文件2回顧介紹進程和線程的概念兩種部件——進程內(nèi)部件(.dll)和進程外部件(.exe)。在VisualBasic中創(chuàng)建一個ActiveXDLL簡要說明了對象瀏覽器在工程中的作用類型庫和對象的概念介紹了ActiveX文檔使用DHTML應用程序創(chuàng)建Internet上的文檔3回顧介紹進程和線程的概念3如何創(chuàng)建幫助按下F1就可以調(diào)出相關主題的幫助文件一個典型的幫助窗口包括三個部分:目錄顯示所有幫助文件的結構信息只用鼠標就可以跳到相應主題索引和一本書的索引類似按照字母順序列出幫助文件中創(chuàng)建的所有主題的一個列表。主題是我們在幫助文件中生成的主題的名稱4如何創(chuàng)建幫助按下F1就可以調(diào)出相關主題的幫助文件4如何創(chuàng)建幫助(續(xù))查找通過創(chuàng)建一個幫助文件信息的數(shù)據(jù)庫來實現(xiàn)的跳躍式的查詢數(shù)據(jù)庫中包括了所有幫助文件中的單詞用戶在不知道主題的情況下可以通過指定一個單詞進行查找5如何創(chuàng)建幫助(續(xù))查找5MSWord的幫助對話框6MSWord的幫助對話框6VisualBasic的幫助VisualBasic6.0提供詳細的幫助系統(tǒng)它有功能強大的幫助系統(tǒng),稱為MicrosoftDeveloper’sNetworkLibrary(MSDN)VisualBasic支持窗口幫助(WinHelp)和最新的HTML幫助系統(tǒng)7VisualBasic的幫助VisualBasic6.幫助文件的屬性使用HelpFile和HelpContextID屬性來指向相應的幫助文件,以便為用戶提供上下文相關的幫助8幫助文件的屬性使用HelpFile和HelpContextI

HelpFile屬性在設計的時候通過“工程屬性”對話框來設置應用程序的幫助文件。9HelpFile屬性在設計的時候通過“工程屬性”對話框來設設置HelpFileHelpFile屬性在運行時可以通過兩種方法來設置——使用App對象或是Err對象App對象使用App關鍵字訪問指明應用程序的標題、版本、路徑、可執(zhí)行文件名和幫助文件,以及是否有實例在運行App對象的HelpFile屬性用來指定幫助文件的名稱需要有效的WinHelp(.hlp)或HTMLHelp(.chm)文件如果指定的文件不存在,則程序會告錯

Err對象用來處理運行錯誤Err對象也支持HelpFile和HelpContext屬性10設置HelpFileHelpFile屬性在運行時可以通過兩種設置HelpFile(續(xù))PrivateSubForm_Load() App.HelpFile=App.Path&“\vb98.chm"EndSub11設置HelpFile(續(xù))PrivateSubForm_設置HelpFile(續(xù))PrivateSubcommand1_Click()DimmsgAsStringOnErrorResumeNextText3.Text=Text1.Text/Text2.Textmsg=Err.Number&""&Err.HelpFile&""&Err.DescriptionMsgBoxmsgEndSub12設置HelpFile(續(xù))PrivateSubcomma

HelpContextID屬性為應用程序的任何用戶界面提供上下文主題幫助在幫助文件中為每一個主題指定一個標記,這個標記是一個數(shù)字ID,它和應用程序中的某一個指定項的主題相關例如:可以把一個命令按鈕控件的HelpContextID屬性設置為10000在用戶選中這個按鈕并按下F1時,VisualBasic就會在程序的HelpFile屬性指定的幫助文件中尋找Context為10000的幫助文件如果找到,就會打開一個幫助窗口并顯示這個主題;如果沒有,就會告錯并顯示幫助文件的缺省主題在設計時,HelpContextID屬性可以在屬性窗口中進行設置13HelpContextID屬性為應用程序的任何用戶界面提供設置HelpContextID14設置HelpContextID14“What’sThisHelp”屬性上下文敏感幫助的替換物提供不使用幫助窗口的對指定主題的幫助設置和上下文敏感幫助一樣在設計時設置或在運行時設置都可以選中控件時可以提供一個到彈出式幫助主題的連接15“What’sThisHelp”屬性上下文敏感幫助的替換“What’sThisHelp”屬性在用戶界面上提供幫助Winhelp和HTML幫助系統(tǒng)都支持這個屬性“這是什么?”幫助按鈕:16“What’sThisHelp”屬性在用戶界面上提供幫助“這是什么?”彈出幫助主題因為“這是什么?“幫助按鈕包含在窗口的標題條中,所以窗口的最大化和最小化按鈕會被移走17“這是什么?”彈出幫助主題因為“這是什么?“幫助按鈕包含在窗“這是什么?”幫助按鈕在窗體的標題條上顯示:在屬性窗口中把窗體的WhatsThisHelp屬性設為True同時把What’sThisButton屬性設為True

把BorderStyle屬性設為“3-FixedDialog”選中想要提供幫助的控件在屬性窗口中,在WhatsThisHelpID屬性中輸入相關的彈出幫助的上下文ID號18“這是什么?”幫助按鈕在窗體的標題條上顯示:18“這是什么?”幫助按鈕(續(xù))就象上下文敏感幫助需要一個從幫助文件到HelpContextID屬性的映射一樣,

‘這是什么?’幫助也需要從幫助文件到What’sThisHelpID屬性的一個映射19“這是什么?”幫助按鈕(續(xù))就象上下文敏感幫助需要一個從幫助提供工具提示當光標在一個控件上停留一定時間后就會顯示出來的一個小小的標簽

對這個控件的功能給出一個簡短的描述20提供工具提示當光標在一個控件上停留一定時間后就會顯示出來的一

在設計時可以按照下面所給的步驟為一個工具條添加工具提示:在窗體中放置好一個帶有按鈕的工具條后,用鼠標右鍵單擊要求工具提示的按鈕選中“屬性”菜單項以便彈出屬性頁對話框在“按鈕”卡片上通過選中要設置工具提示的按鈕的索引來選中這個按鈕在工具提示文本框中輸入幫助文本提供工具提示(續(xù))21在設計時可以按照下面所給的步驟為一個工具條添加工具提示:提提供工具提示(續(xù))屬性頁對話框22提供工具提示(續(xù))屬性頁對話框22提供工具提示(續(xù))在運行時刻可以使用下面的方法來把工具條Toolbar1的第二個按鈕的tooltiptext屬性設置為“Deleteafile”:Toolbar1.Buttons(2).ToolTipText=“Deleteafile”VisualBasic的大部分控件在屬性頁中都支持tooltiptext屬性。通過下面的格式來設置Tooltiptext屬性值:command1.ToolTipText=“Clicktosave”23提供工具提示(續(xù))在運行時刻可以使用下面的方法來把工具條To編輯選項兩種通用的文件格式

–偽代碼(p-code)

本機代碼(nativecode)一個工程可以編譯為這兩種格式中的任何一種這兩種格式的主要區(qū)別在于可執(zhí)行文件的大小和程序運行的速度24編輯選項兩種通用的文件格式–24

偽代碼P-code介于程序的文本文件和計算機處理器直接執(zhí)行的本機代碼之間的中間代碼在運行時,VisualBasic把每一句偽代碼翻譯為本機代碼,也就是把每一句偽代碼轉(zhuǎn)換為計算機處理器可以理解的指令如果想避免這種轉(zhuǎn)換的話可以直接把程序編譯為本機代碼格式在執(zhí)行時,VisualBasic是按照需要執(zhí)行編譯的這意味著當我們在VisualBasic中啟動一個程序時,只讓程序要運行的部分被編譯偽代碼指令被轉(zhuǎn)換為處理器可以執(zhí)行的指令在運行時,使用一個庫在偽代碼執(zhí)行前對它進行解釋25偽代碼P-code介于程序的文本文件和計算機處理器直接執(zhí)偽代碼P-code(續(xù))優(yōu)點比本機代碼產(chǎn)生的最終代碼少,這樣可以減小編譯后的文件的大小編譯的速度也比編譯本機代碼要快缺點運行起來比本機代碼慢26偽代碼P-code(續(xù))優(yōu)點26本機代碼是處理器使用的語言,所以本機代碼可以被處理器直接執(zhí)行

可以跳過偽代碼直接把程序編譯為本機處理器的指令為用戶提供比偽代碼更多的優(yōu)化和調(diào)試選項,因此也更可取當使用擴展的數(shù)學計算時本機代碼編譯執(zhí)行起來會更快從“工程(Project)”菜單項中選擇“工程屬性(ProjectProperties)”對話框就可以選擇編譯選項27本機代碼是處理器使用的語言,所以本機代碼可以被處理器直接執(zhí)行工程屬性對話框中的編譯選項28工程屬性對話框中的編譯選項28本機代碼編譯選項選項說明代碼速度優(yōu)化讓編譯器產(chǎn)生更快的代碼代碼大小優(yōu)化最小化編譯后代碼的大小。無優(yōu)化放棄所有的優(yōu)化選項。針對PentiumPro優(yōu)化優(yōu)化代碼,使其支持在

PentiumPro(tm)處理器上運行。產(chǎn)生符號化調(diào)試信息產(chǎn)生

.pdb文件,其中包含允許用

MicrosoftVisualC++5.0或其它兼容調(diào)試器進行調(diào)試的信息。29本機代碼編譯選項選項說明代碼速度優(yōu)化讓編譯器產(chǎn)生更快的代碼本機代碼編譯選項(續(xù))無別名設定通知編譯器應用程序不使用別名引用。(別名就是一個名字,它指向的內(nèi)存位置已經(jīng)被另外一個名字引用)取消數(shù)組邊界檢查禁用

VisualBasic的數(shù)組邊界檢查。缺省情況下VisualBasic會檢查一個數(shù)組的索引是否超出邊界,如果越界會給出一個錯誤信息。取消整數(shù)溢出檢查禁用

VisualBasic的整數(shù)溢出檢查。取消浮點錯誤檢查禁用

VisualBasic的浮點數(shù)錯誤檢查。取消PentiumFDIV安全檢查禁用對

Pentium(tm)處理器浮點數(shù)除法的安全檢查。允許不舍入的浮點操作允許不用對浮點數(shù)進行舍入獲取精確值就對浮點數(shù)表達式進行比較。30本機代碼編譯選項(續(xù))無別名設定通知編譯器應用程序不使用別名生成編譯文件設置好編譯選項后就可以對工程進行編譯了選中“文件(File)”菜單中的“生成‘工程名稱’{EXE|DLL}”選項這樣就對工程進行編譯并檢測所有的編譯錯誤,最后在目標目錄下生成EXE或DLL文件31生成編譯文件設置好編譯選項后就可以對工程進行編譯了31條件編譯

只想編譯程序中的部分代碼在不同的版本中可以包括應用程序的某些特別的功能,例如設計一個可以在不同的平臺上運行的應用程序或者在一個以多種語言發(fā)布的應用程序中顯示信息在代碼中可以使用預定義的常量來決定編譯程序中的哪一部分代碼將要被編譯32條件編譯只想編譯程序中的部分代碼32條件編譯(續(xù))設置條件編譯常數(shù)有三種方法:在“工程屬性”對話框中在命令行中在代碼中條件編譯常數(shù)有特別的作用范圍,如何設置條件編譯常數(shù)可能取決于希望常數(shù)具有怎樣的作用范圍33條件編譯(續(xù))設置條件編譯常數(shù)有三種方法:33條件編譯(續(xù))#IfconGermanVersionThen Msgbox“GutenMorgen”#ElseIfconFrenchVersionThen Msgbox“BonJour”#Else Msgbox“GoodDay”#EndIf如何設置范圍“工程屬性”對話框Public作用于工程中的所有模塊命令行Public作用于工程中的所有模塊代碼中的

#Const語句Private僅作用于聲明該常數(shù)的模塊34條件編譯(續(xù))#IfconGermanVersionTh條件編譯(續(xù))為了把一個程序編譯為德語版本,從“工程”菜單選擇“工程屬性”單擊“工程屬性”對話框中的“生成”選項卡,在“條件編譯參數(shù)”字段中鍵入一個參數(shù),例如conFrenchVersion=–1當程序被編譯時,該參數(shù)將滿足#If...Then的條件,處于#If...Then和#EndIf之間的代碼將包含進編譯后的程序中35條件編譯(續(xù))為了把一個程序編譯為德語版本,從“工程”菜單選條件編譯變量通過冒號間隔來設置多個常數(shù)36條件編譯變量通過冒號間隔來設置多個常數(shù)36在命令行中設置常數(shù)如果要從命令行啟動編譯,可以使用/d開關鍵入條件編譯常數(shù):vb6.exe/MakeProject1.vbp/dconGermanVersion=–1命令行的常數(shù)聲明較之在“工程屬性”對話框中鍵入的常數(shù)聲明有較高的優(yōu)先級,但并不清除它們;在“工程屬性”對話框中設置的參數(shù)對后續(xù)的編譯保持有效布爾值True和–1相等37在命令行中設置常數(shù)如果要從命令行啟動編譯,可以使用/d開#Const語句用來定義條件編譯常數(shù)#Constconstantname=expressionconstantname是常量的名字,expression可以是文字、其它的條件編譯常數(shù)或包含算術或邏輯運算符的任意組合例如,在代碼中使用#Const語句來為一個日語版本定義一個條件編譯常量: #ConstconJapanVersion=138#Const語句用來定義條件編譯常數(shù)38打包和發(fā)布程序打包和發(fā)布向?qū)椭覀優(yōu)槌绦騽?chuàng)建所需要的安裝包裝類型

把程序發(fā)布到軟盤、網(wǎng)絡或者Web上這些文件中包含VB運行時所需要的庫、任何其它必需的.dll文件和幫助文件、數(shù)據(jù)文件、文檔和ReadMe文件創(chuàng)建兩種類型的軟件包標準軟件包

Internet軟件包39打包和發(fā)布程序打包和發(fā)布向?qū)?9打包和發(fā)布程序(續(xù))打包把程序的可執(zhí)行文件包裝到一個稱為發(fā)布單元的軟件包中的操作易于開發(fā)而且易于將應用程序安裝到用戶的計算機上40打包和發(fā)布程序(續(xù))打包40啟動向?qū)б环N啟動方法從“開始”菜單中選中“程序”從MicrosoftVisualStudio6.0中選中MicrosoftVisualBasic6.0工具選中打包和展開向?qū)Я硪环N啟動方法從“外接程序”菜單中選中“外接程序管理

器”

從外接程序列表中選中打包和展開向?qū)нx中加載行為中的加載/卸載選項,然后單擊“確定(OK)”按鈕41啟動向?qū)б环N啟動方法41啟動向?qū)Вɡm(xù))42啟動向?qū)Вɡm(xù))42啟動向?qū)Вɡm(xù))打包把應用程序打包為可展開的.cab文件.cab文件取代了VisualBasic前面版本中的一長串的壓縮文件。.ocx文件、輸入文件.inf和其它的一些相關文件現(xiàn)在都包含在.cab文件中43啟動向?qū)Вɡm(xù))打包43啟動向?qū)Вɡm(xù))展開將軟件包發(fā)布到軟盤、網(wǎng)絡或Web媒體上管理腳本瀏覽、編輯或刪除包裝和部署向?qū)е星懊鎯刹糠謩?chuàng)建的腳本44啟動向?qū)Вɡm(xù))展開44創(chuàng)建一個安裝程序“包類型”窗口顯示了兩個選項:標準安裝包相關文件

我們選中標準安裝包來創(chuàng)建一個安裝程序,它使用一個setup.exe來安裝一個應用程序45創(chuàng)建一個安裝程序“包類型”窗口顯示了兩個選項:45創(chuàng)建一個安裝程序(續(xù))46創(chuàng)建一個安裝程序(續(xù))46創(chuàng)建一個安裝程序(續(xù))在“包類型”窗口中單擊“下一步(Next)”按鈕,接著顯示的是“打包文件夾”窗口選擇安裝包存儲的文件夾位置可以是一個本地的文件夾也可以是一個網(wǎng)絡上的某個位置,通過選擇“網(wǎng)絡”按鈕可以選擇要存放的網(wǎng)絡位置還可以選擇“新建文件夾”來創(chuàng)建一個新的文件夾47創(chuàng)建一個安裝程序(續(xù))在“包類型”窗口中單擊“下一步(Nex創(chuàng)建一個安裝程序(續(xù))48創(chuàng)建一個安裝程序(續(xù))48創(chuàng)建一個安裝程序(續(xù))“包含文件”窗口給出了安裝包中包含的文件的列表在這個列表中可以看到我們的程序的可執(zhí)行文件和其它一些從屬文件如果想添加文件,可以單擊“添加”按鈕49創(chuàng)建一個安裝程序(續(xù))“包含文件”窗口給出了安裝包中包含的文創(chuàng)建一個安裝程序(續(xù))50創(chuàng)建一個安裝程序(續(xù))50創(chuàng)建一個安裝程序(續(xù))“壓縮文件選項”窗口

用來指定如何根據(jù)發(fā)布程序的需要來進行壓縮。多個壓縮文件選項選擇合適的選項保證每個壓縮文件的大小不超過計劃使用的磁盤的容量51創(chuàng)建一個安裝程序(續(xù))“壓縮文件選項”窗口51創(chuàng)建一個安裝程序(續(xù))52創(chuàng)建一個安裝程序(續(xù))52創(chuàng)建一個安裝程序(續(xù))53創(chuàng)建一個安裝程序(續(xù))53創(chuàng)建一個安裝程序(續(xù))“啟動菜單項”窗口用來指定應用程序在Windows啟動菜單中的位置“安裝位置”窗口用來指定正常安裝時各個文件的位置54創(chuàng)建一個安裝程序(續(xù))“啟動菜單項”窗口用來指定應用程序在W創(chuàng)建一個安裝程序(續(xù))55創(chuàng)建一個安裝程序(續(xù))55創(chuàng)建一個安裝程序(續(xù))56創(chuàng)建一個安裝程序(續(xù))56創(chuàng)建一個安裝程序(續(xù))“共享文件”窗口用來指定安裝后哪些文件用作共享文件最后一個窗口讓我們在文本框中輸入名稱用來保存會話設置以便將來使用57創(chuàng)建一個安裝程序(續(xù))“共享文件”窗口用來指定安裝后哪些文件創(chuàng)建一個安裝程序(續(xù))58創(chuàng)建一個安裝程序(續(xù))58創(chuàng)建一個安裝程序(續(xù))59創(chuàng)建一個安裝程序(續(xù))59開始展開單擊向?qū)е械摹罢归_”按鈕可以選擇是展開到一個軟盤(如果前面打包選擇的是壓縮到多個文件),還是展開到光盤,或是發(fā)布到網(wǎng)絡上,或是發(fā)布到Web(Web公布選項)上展開一個包60開始展開展開一個包60展開到軟盤用軟盤作為發(fā)布的媒體時,程序的大小受到很大的限制因為一張高密度的軟盤可以存儲的內(nèi)容也就是1.44MB,這就限制了程序的大小要在一張軟盤的存儲范圍之內(nèi)而且,如果對程序有了修改,則軟盤需要重新創(chuàng)建、復制和發(fā)布

要求選中的軟盤驅(qū)動器是存在的優(yōu)點用來讀取軟盤的硬件設備幾乎在每臺電腦上都可以找到,另外一個好處是軟盤的便攜性61展開到軟盤用軟盤作為發(fā)布的媒體時,程序的大小受到很大的限制6展開方法窗口62展開方法窗口62展開到光盤容量比軟盤要大得多,一張光盤可以容納600MB程序的大小不再受限制使用光盤來發(fā)布程序也很便捷光盤可以完全自啟動Windows95/98和WindowsNT都支持自啟動的光驅(qū)只要用戶把光盤放入光驅(qū)中就可以開始啟動安裝程序63展開到光盤容量比軟盤要大得多,一張光盤可以容納600MB6網(wǎng)絡發(fā)布需要考慮程序的大小、網(wǎng)絡的帶寬、速度和網(wǎng)絡連接的可靠性兩種方法:第一種方法是把網(wǎng)絡作為一種媒體用來把應用程序傳輸?shù)娇蛻舳藨贸绦虮4嬖诜掌鞫?,被下載并安裝到客戶

端第二種方法是創(chuàng)建一個網(wǎng)絡安裝,只有很少的幾個文件拷貝到客戶端每當客戶端執(zhí)行程序時,再把必要的文件下載到客戶端的RAM中64網(wǎng)絡發(fā)布需要考慮程序的大小、網(wǎng)絡的帶寬、速度和網(wǎng)絡連接的可靠網(wǎng)絡發(fā)布(續(xù))盡管使用基于網(wǎng)絡的發(fā)布需要大量的網(wǎng)絡數(shù)據(jù)傳輸,但是這種方法還是很有益處的因為文件是集中存放在服務器端,所以對文件做修改和更新是很容易實現(xiàn)的不需要象使用軟盤那樣多次發(fā)布在打包和展開向?qū)е腥绻x擇了網(wǎng)絡發(fā)布,則安裝包會拷貝到一個選中的網(wǎng)絡環(huán)境的某個位置上65網(wǎng)絡發(fā)布(續(xù))盡管使用基于網(wǎng)絡的發(fā)布需要大量的網(wǎng)絡數(shù)據(jù)傳輸,文件夾窗口66文件夾窗口66在Web上展開可以讓我們把應用程序發(fā)布到Internet上優(yōu)點:客戶端不需要運行任何安裝工具來把應用程序安裝到本機上,只需要一個瀏覽器來和應用程序進行交互。省去了郵寄軟盤給遠程客戶的手續(xù)用戶不需要在安裝時和多張磁盤打交道保證用戶總是可以獲得程序的最新版本,也就是說任何更新立即有效實現(xiàn)Web發(fā)布,要選中“展開方法”窗口中的“Web發(fā)布”選項67在Web上展開可以讓我們把應用程序發(fā)布到Internet上6在Web上展開(續(xù))68在Web上展開(續(xù))68“展開項”窗口69“展開項”窗口69展開的附加項70展開的附加項70設置Web發(fā)布站點71設置Web發(fā)布站點71卸載程序MicrosoftWindows95/98和WindowsNT要求所有在Windows操作系統(tǒng)中安裝的應用程序都要有相應的卸載程序用戶安裝應用程序setup程序會把一個St6unst.exe拷貝到\Windows或者\Winnt目錄下VisualBasic會在應用程序的安裝目錄下產(chǎn)生一個log文件(St6unst.log)72卸載程序MicrosoftWindows95/98和Wi卸載程序(續(xù)).log文件中包含下面一些信息:在安裝時創(chuàng)建的目錄安裝文件的所在位置創(chuàng)建或修改的注冊表的入口Windows創(chuàng)建的開始菜單的入口通過控制面板中的添加/刪除程序來卸載一個應用程序73卸載程序(續(xù)).log文件中包含下面一些信息:73Setup工具包是一個和VisualBasic一塊安裝的程序,打包和展開向?qū)г趧?chuàng)建一個安裝程序時使用到它包含有應用程序的Setup程序在把文件安裝到用戶的計算機上時所用到的窗體和代碼打包和展開向?qū)е邪薙etup工具包創(chuàng)建的setup1.exe文件74Setup工具包是一個和VisualBasic一塊安裝的程Setup工具包(續(xù))可以用來修改安裝程序過程中的屏幕界面直接創(chuàng)建一個安裝程序位于VisualBasic根目錄下的\Wizards\PDWizard\Setup1子目錄下75Setup工具包(續(xù))可以用來修改安裝程序過程中的屏幕界面7Setup工具包(續(xù))在安裝過程中有兩個setup程序:setup.exe在用戶的計算機上執(zhí)行預安裝過程,包括安裝setup1.exe和任何其它主安裝程序需要的文件setup1.exe是Setup工具包自己定義的76Setup工具包(續(xù))在安裝過程中有兩個setup程序:76TreeView控件提供了一種通用的組織相關數(shù)據(jù)的方法把數(shù)據(jù)組織為分層的樹狀數(shù)據(jù)從一個根結點開始,下面是一些相關的結點每一個結點稱為根結點的子結點每個子結點又可以有它自己的子結點,如此類推77TreeView控件提供了一種通用的組織相關數(shù)據(jù)的方法77Windows資源管理器(TreeView的例子)78Windows資源管理器(TreeView的例子)78TreeView控件(續(xù))用戶可以通過折疊或展開某個分支來查看感興趣的信息使用結點的屬性和事件可以對每個結點的信息進行操作使用結點可以顯示圖片79TreeView控件(續(xù))用戶可以通過折疊或展開某個分支來查TreeView控件(續(xù))我們也可以使用一個復選框來讓用戶根據(jù)需要標記某些特殊的結點需要通過在“部件”對話框中選中選項“MicrosoftWindowsCommonControls6.0”才能讓它在工具箱中顯示80TreeView控件(續(xù))我們也可以使用一個復選框來讓用戶根屬性LineStyle返回或設置在結點間顯示的線的類型 object.LineStyle[=number]number參數(shù)的設置如下:tvwTreeLines對應值0,它要求顯示結點到它的父結點的連線tvwRootLines對應值1,不僅要求顯示結點到它的父結點的連線,而且要求顯示到根結點的連線使用格式如下: Treeview1.LineStyle=tvwRootLines81屬性LineStyle81屬性(續(xù))Nodes使用下面的格式來返回到結點集合中一個結點的引用: object.Nodes可以使用標準的集合方法來處理Nodes對象(例如,Add和Remove方法)我們可以使用集合中每個元素的下標來訪問元素,或者使用元素對應的唯一關鍵字(保存在Key屬性中)來訪問這個元素Nodes集合的Add方法使用格式如下: object.Nodes.Add(relative,relationship,key,text,image,selectedimage)82屬性(續(xù))Nodes82Add方法的參數(shù)設置設置值對應值說明tvwFirst0這個結點被插入到和relative參數(shù)指定的結點同一級的所有結點的前面。tvwLast1這個結點被插入到和relative參數(shù)指定的結點同一級的所有結點的后面。一般情況下所有隨后結點都是緊跟著前一個插入。tvwNext2(缺?。┙Y點作為relative參數(shù)指定的結點的后一個結點插入。tvwPrevious3結點作為relative參數(shù)指定的結點的前一個結點插入。tvwChild4插入的結點作為relative參數(shù)指定的結點的一個子結點。83Add方法的參數(shù)設置設置值對應值說明tvwFirst0這個結Add方法的參數(shù)relative用來給出新結點和這個已存在結點的關系

relationship按照表中所給的參數(shù)值設置新結點的相對位置key為新結點指定一個唯一的關鍵字text給出用來顯示結點時使用的文本信息image給定在和TreeView控件相關的圖片列表中一幅圖片的索引值selectedimage指定一幅在圖片列表中的圖片的索引值,這幅圖片在結點被選中時顯示84Add方法的參數(shù)relative84Node對象的屬性Checked返回結點對應的復選框是否被選中 object.Checked

[=boolean]Expanded返回一個值,從這個值可以判斷一個結點當前是展開的還是折疊的 object.Expanded[=boolean]85Node對象的屬性Checked85Node對象的屬性(續(xù))Index用來返回或設置結點集合中結點的唯一標

志 object.IndexChildren返回一個結點對象包含的子結點的個數(shù) object.Children86Node對象的屬性(續(xù))Index86Node對象的屬性(續(xù))Sorted返回或設置一個值,用來決定是否對該結點的子結點按照字母順序進行排序也可以用來設置一個值以決定是否對一個TreeView控件的根一級的結點按照字母順序進行排序

object.Sorted[=Boolean]布爾值參數(shù)的設置含義如下:True-按照結點的Text屬性值進行按字母順序的排序False-不進行排序在代碼中: node.Sorted=True87Node對象的屬性(續(xù))Sorted87Node對象的屬性(續(xù))Style設置TreeView控件中每個結點對相對應顯示的圖片的類型(圖片、文本、加號/減號或者線)和文本 object.Style[=number]Number參數(shù)的每個設置值的含義如下:0–

只能為文本1–

可以同時設置圖片和文本

2–可以同時設置加號/減號和文本

3–可以同時設置加號/減號、圖片和文本88Node對象的屬性(續(xù))Style88Node對象的屬性(續(xù))4–

可以同時設置線和文本5–

可以同時設置線、圖片和文本

6–

可以同時設置線、加號/減號和文本7–

(缺省)可以同時設置線、加號/減號、圖片和文本在代碼中:Treeview1.Style=tvwTreelinesPlusMinusText89Node對象的屬性(續(xù))4–可以同時設置線和文本89Node對象的屬性(續(xù))CheckBoxes決定是否在一個結點旁設置一個復選框 object.CheckBoxes[=Boolean]如果設置為True,則在結點旁設置復選

框,否則不設置 TreeView1.Checkboxes=True90Node對象的屬性(續(xù))CheckBoxes90事件Expand在TreeView控件中的一個結點對象被展開時發(fā)生,也就是當它的子結點變?yōu)榭梢姷臅r候發(fā)生 PrivateSubobject_Expand(ByValnodeAsNode)這里的node指這個被展開的結點發(fā)生在Click和DblClick事件之后91事件Expand91事件(續(xù))PrivateSubTreeView1_Expand(ByValNodeAsNode) IfNode.Index<>1Then Node.Expanded=False EndIfEndSub92事件(續(xù))PrivateSubTreeView1_Exp事件(續(xù))Collapse當TreeView控件中的任何結點被折疊時觸發(fā)

PrivateSubobject_Collapse(ByValnodeAsNode)

這兒的node參數(shù)指那個被點中的結點對象在標準Click事件之前發(fā)生93事件(續(xù))Collapse93事件(續(xù))

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論