資源描述:
《VB編程基礎教程15–使用對象》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、VB編程基礎教程15–使用對象[程序樂園]在visualbasic中創(chuàng)建應用程序之際,也就是和對象打交道之時了??梢允褂胿isualbasic提供的對象—比如控件、窗體和數(shù)據(jù)訪問對象。也可以在一個visualbasic應用程序內部控制另一個應用程序對象。甚至還可建立自己的對象,定義它們的屬性和方法。對象是什么對象是代碼和數(shù)據(jù)的組合,可以作為一個單位來處理。對象可以是應用程序的一部分,比如可以是控件或窗體。整個應用程序也是一個對象。下表列出了在visualbasic中可能用到的幾種類型的對象:示例描述命令按鈕窗體上的控件,象命令按鈕和
2、框架,它們都是對象。窗體visualbasic工程中的每一個窗體都是獨立的對象。數(shù)據(jù)庫??數(shù)據(jù)庫是對象,并且還包含其他對象,如字段、索引等。圖表microsoftexcel中的圖表是對象。對象從何而來visualbasic中的每個對象都是用類定義的。用餅干模子和餅干之間的關系作比,就會明白對象和它的類之間的關系。餅干模子是類。它確定了每塊餅干的特征,比如大小和形狀。用類創(chuàng)建對象。對象就是餅干。下面再用兩個例子進一步說明visualbasic中類與對象之間的關系。在visualbasic的“工具箱”上,控件代表類。直到在窗體上畫出這些
3、被稱作控件的對象為止,它們實際上并不存在。在創(chuàng)建控件之時也就是在復制控件類,或建立控件類的實例。這個類實例就是應用程序中引用的對象。在設計時操作的窗體是類。在運行時,visualbasic建立窗體的類實例?!皩傩浴贝翱陲@示visualbasic應用程序中的對象的類和name屬性把對象看作是類的原原本本的復制品,從而建立所有對象。一旦它們以單個對象的形式存在,屬性就可改變。例如,如果在窗體上畫了三個命令按鈕,則每個命令按鈕對象都是命令按鈕類的實例。每個對象都具有一組由類定義的公共的特征和功能(屬性、方法和事件)。但是,每個對象都有自己
4、的名字,都能分別設置成有效或無效,都能放在窗體的不同位置,等等。為簡單起見,本章之外的大部分內容將不過多引用對象的類。例如,只要記住術語“l(fā)istbox控件”意味著“列表框類的一個實例”。用對象能做什么對象可提供現(xiàn)成代碼,省卻書寫麻煩。例如,可以自己創(chuàng)建打開文件和保存文件的對話框,但實際上大可不必。取而代之的是利用visualbasic提供的commondialog控件(一個對象)。雖然用戶也能撰寫日程管理和資源管理的程序,但也大可不必。在此亦可使用microsoftproject提供的calendar、resources和task
5、對象。visualbasic可以組合來自其它來源的對象visualbasic提供了把來自不同資源的對象組合起來的工具?,F(xiàn)在可把visualbasic的各種強有力的特性以及支持自動化(先前以ole自動化聞名)的應用程序結合起來,建立定制的解決方法。自動化是部件對象模式(com)的一個特性,它是應用程序使用的工業(yè)標準,用來陳列對象以開發(fā)工具和其它應用程序??砂裿isualbasic內部的控件結合在一起,也可使用其它應用程序提供的對象??紤]把下列對象放入visualbasic窗體:microsoftexcelchart對象microsof
6、texcelworksheet對象microsoftworddocument對象可用這些對象建立支票簿應用程序。由于不必書寫代碼,重建已由microsoftexcel和word等對象提供的功能,因而節(jié)省很多時間。使用對象初步visualbasic對象支持屬性、方法和事件。在visualbasic中,稱對象的數(shù)據(jù)(設置和屬性)為屬性,稱各種可在對象上操作的過程為方法。事件是可被對象識別的動作,例如單擊鼠標和按下鍵盤鍵,還可編寫代碼來響應事件。改變對象的屬性就可改變對象的特性。用收音機打比方,收音機的一個屬性是音量。用visualbas
7、ic的行話來說,就是收音機有個“volume”屬性,改變其值就可調節(jié)音量大小。假定收音機的音量值可設置在0到10之間。如果能夠通過visualbasic控制收音機,則可在一個過程中寫代碼,把“volume”屬性值從3提高到5,使聲音更響一些:radio.volume=5除了屬性以外,對象還有方法。方法和屬性都是對象的一部分。一般說來,方法就是要執(zhí)行的動作,而屬性就是要設置或檢索的特性。以撥號打電話為例??梢哉f電話有一個“撥號”方法,撥一個7位電話號碼的語法就是:phone.dial5551111對象還有事件。當對象的某方面有變動時就
8、觸發(fā)了事件。例如,收音機可能有“volumechange”事件。電話可能有“ring”事件,等等。用屬性控制對象個別屬性隨著可以設置和取得它們的值的時間不同而不同。有的屬性可在設計時設置??稍凇皩傩浴贝翱谠O置這些屬性的值而無需編寫任何