- Visual Basic從入門到精通(第2版)
- 龍馬高新教育策劃 國家863中部軟件孵化器編著
- 236字
- 2019-01-02 05:00:38
第2篇 核心技術
本篇介紹可視化編程,窗體和系統對象,標準模塊和類模塊,標準控件,ActiveX控件、工具欄和狀態欄,鼠標、鍵盤事件,菜單和對話框設計以及程序調試與錯誤處理等內容。通過本篇的學習,讀者能輕松掌握Visual Basic編程的核心技術。
第6章 應用程序的精髓—可視化編程
本章視頻教學錄像:30分鐘
面向對象技術是計算機軟件工程中的區別與面向過程技術一種程序設計方法。在軟件工程中,面向對象是一種新式的計算機程序設計架構,其原則是計算機程序由對象組成,其技術有其自身的評價參數和特點,它的設計思想更符合人們對現實世界的認識方式。本章將介紹對象和類的基本概念和如何使用對象。
本章要點(已掌握的在方框中打鉤)
□ 掌握對象和類的含義
□ 熟悉簡單的對象的建立與編輯
□ 掌握對象屬性及其設置的方法
□ 掌握對象的方法及其調用過程
□ 熟悉事件的調用過程
6.1 對象概念
本節視頻教學錄像:15分鐘
對象和類是面向對象中的基本組成部分,對象是現實世界中具體的事物,而類是將一類事物進行抽象而得到的。對象是代碼和數據的組合,可以作為一個單位來處理。對象可以是應用程序的一部分,比如可以是控件或窗體。整個應用程序也是一個對象。
VB中的每個對象都是用類定義的。用餅干模子和餅干之間的關系做比較,就會明白對象和它的類之間的關系。餅干模子是類。它確定了每塊餅干的特征,比如大小和形狀。用類創建對象,對象就是餅干。類是面向對象程序設計的核心技術,可以理解成一種定義了對象行為和外觀的模板;把對象看作是類的原原本本的復制品。
6.1.1 對象和類
究竟什么是對象和類呢?首先我們通過一個例子來認識一下。
比如“樹木”是一個抽象的名稱,類似一個類的概念。而梧桐樹、楊樹、蘋果樹等就是“樹木”類的具體對象。這些種類的樹木因為外部差異所以稱為不同的對象,但是內部機理具備樹木的普遍特性,所以被稱為一類被稱為“樹木”物體。
對象的概念是面向對象編程技術的核心。所以從面向對象的觀點看,所有的面向對象的應用程序都是有對象組合而成的。而類(class)是同類對象的屬性和行為特征的抽象描述。
在現實生活中,對象指的是具體的事物,如天上的衛星、地上的樹木、海里的輪船等,每個客體都具有一些屬性和行為,例如學生有學號、姓名、性別等屬性,有上課、考試、做實驗等行為。因此,每個個體都可以用屬性和行為來描述。將對象的內部狀態稱為屬性,將其行為稱為方法和事件。對象之間的聯系通過消息來傳遞,消息機制是對象間相互聯系和相互作用的方式。
在Visual Basic 6.0中,系統為每一類對象都規定了若干屬性。設計中可以改變具體對象的屬性值。窗體的任何一個對象都有屬性、事件和方法3個要素,它們各自從不同的角度表達了對象的構成,通過三者的有機結合,便構成Visual Basic應用程序的基本元素。也可以說,一個完整的Visual Basic應用程序就是若干個對象集合而成的,而每個對象又是通過屬性、事件及方法構成的。
提示
類和對象是面向對象程序設計的語言基礎。類是從相同類型的對象中抽象出來的一種數據類型也可以說是所有具有相同數據結構、相同操作的對象的抽象。類的構成不僅包含描述對象屬性的數據,還有對這些數據進行操作的事件代碼,即對象的行為(或操作)。
6.1.2 VB中對象的建立和編輯
在“工程設計”窗口,打開“代碼”窗口有以下方法。
⑴ 依次選擇“視圖”→“代碼窗口”菜單選項,打開“代碼窗口”。
⑵ 選中某一對象,右擊鼠標,打開快捷菜單,選擇“代碼窗口”菜單選項,打開“代碼”窗口。在“代碼”窗口,首先通過“對象”組合框提供的參數選擇對象,然后再通過“事件”組合框提供的參數選擇事件,這時系統自動給出事件過程開頭和結束語句。
例如:
01 Private Sub Cmdl_Click() 02 End Sub
接下來便可以在上面開頭和結束語句之間輸入過程代碼。在Visual Basic系統中,過程代碼是針對具體對象事件編寫的,為了確切得知名某個對象的“操作”,必須在方法和屬性名前加上對象名,中間用小數點(.)分隔。
例如:
01 Private Sub CmdHello_Click() 02 Lbldisply.Caption="您好!" "&txtName.Text" 03 End Sub

6.2 對象的屬性、方法和事件
本節視頻教學錄像:13分鐘
在面向對象的程序設計中,對象具有屬性、方法和事件。屬性用來描述對象的特征,方法告訴我們對象對象應做的事情,而事件是對象所產生的事情,事件發生時可以編寫代碼進行處理。在Visual Basic 6.0中,每一個窗體和控件都具有自己的屬性、方法和事件的對象。可以把屬性看作一個對象的性質,把方法看作對象的動作,把事件看作對象的響應。在程序設計中,基本的設計機制是,改變對象的屬性、使用對象的方法、為對象事件編寫事件過程。程序設計時要做的工作就是決定應更改哪些屬性、調用哪些方法、對哪些事件作出響應,從而得到希望的行為。
6.2.1 對象的屬性及設置
在Visual Basic系統中,各種對象擁有幾十個屬性。對象的屬性可以在設計對象時通過屬性窗口設置,也可以在程序運行時通過事件代碼來進行設置。
1. 利用“屬性”窗口設置對象屬性
在“工程設計”窗口,有三種打開“屬性”窗口的方法。
⑴ 選擇窗口上的“視圖”→“屬性窗口”菜單選項,打開“屬性”窗口。
⑵ 選中設置屬性的“對象”,右擊鼠標,打開快捷菜單,選擇“屬性窗口”菜單選項,打開“屬性”窗口。
⑶ 選中設置屬性的“對象”,單擊工具欄中的按鈕,打開“屬性”窗口。
在屬性窗口,可以直接為對象設置屬性,如圖所示。

也可以通過組合框提供的參數選擇對象屬性,如圖所示。

還可以通過對話窗口為對象設置屬性,如圖所示。

2. 利用屬性設置為對象設置屬性
屬性設置語句格式1:
[<父類名>].<對象名>.屬性名=<屬性值>
屬性設置語句格式2:
With <對象名> <屬性值表> End with
提示
在Visual Basic中,某些對象的若干屬性不能通過程序語句設置,只能在“屬性”窗口設置;還有些屬性是只讀屬性,只能繼承,不能改動;另外有些對象(尤其后面講到的ActiveX控件),個別的屬性窗口沒有出現,必須在程序語句設置或在專門的“屬性”窗口設置。
如下是命令按鈕的屬性,除在“屬性窗口”設置屬性外,還可以用以下程序語句設置:
01 Private Sub Form-Load() 02 With Cmd1 03 caption="關閉" 04 Left=4680 05 Top=5280 06 Height=615 07 Width=1335 08 End With 09 End Sub
6.2.2 對象的方法及調用
對象的方法,是指控制對象動作行為的方式。方法不同于事件,方法是對象本身內含有的函數和過程,是一個簡單、用戶不需要知道細節、用戶無法改變的一個動作。而事件是由用戶定義的動作,這個動作用戶需要了解細節而且是可以改變的,每一類對象都可能有一些自身特定的方法。在Visual Basic 6.0中,方法的調用形式是:
對象名.對象名
例如,Adodc1.Refresh,刷新的方法Refresh是數據連接對象Adodc的一個方法;Form1.Hide也表示Hide是窗體對象Form的一個方法。
對象的方法是對象內部已經確定的。
6.2.3 對象的事件及事件過程
事件,指的是發生在對象上的動作。事件的發生并非隨意的,某些事件僅發生在某個時間或某些對象上。在Visual Basic系統中,一個對象可以識別和響應一個或者多個事件,這些事件的代碼是通過“事件過程”定義的。
在Visual Basic 6.0中,事件的定義方式為:
Private Sub對象名-事件名稱 (事件內容) End Sub
例如,當用戶單擊Command1按鈕時,顯示文字信息“hello Visual Basic”,如下圖所示。


在設計界面上添加一個command Button,雙擊Command1,進入代碼編輯區,輸入以下代碼。
01 Private Sub Command1_Click() 02 Form1.Caption="hello Visual Basic"'設置對象的標題為"hello Visual Basic" 03 End Sub
6.3 高手點撥
本節視頻教學錄像:2分鐘
1. “對象名稱”指的是對象(名稱)屬性定義的標識符,這一屬性必須在“屬性”窗口進行定義。
2. “事件名稱”是由Visual Basic系統定義好的某一對象能夠識別和響應的事件。
3. “程序代碼”是Visual Basic提供的操作語句及特定的方法。
在Visual Basic系統中,對象可以響應的事件有很多,在多數情況下,事件是通過用戶的操作行為引發的(如單擊鼠標、移動鼠標、按鍵等)。當事件發生時,將執行包含在事件過程中的全部代碼。
事件有的適用于專門控件,有的適用于多種控件,下表列出Visual Basic系統中的核心事件。

6.4 實戰練習
一、思考題
試總結對象的屬性、方法、事件的關系。
二、操作題
設計一個窗體,當單擊“顯示”按鈕時,在文本框內顯示“Hello Visual Basic”;當單擊“清除”按鈕時,清除文本框內的內容;當單擊“退出”按鈕時,結束程序運行。