1、首先,在 Windows 中控件的身影無處不在,各種各樣的按鈕、文本框、無線鈕,都是控 件的種類,VB 把這些控件模式化,并且每個(gè)控件都有若干屬性用來控制控件的外觀,工作方法。這樣就可以象在畫板上一樣,隨意點(diǎn)幾下鼠標(biāo),一個(gè)按鈕就完成了,這些在以前的編程語言下是要經(jīng)過相當(dāng)復(fù)雜的工作的??赡軐?duì)面向?qū)ο蟮木幊桃呀?jīng)有了一定了解,它是由事件驅(qū)動(dòng)的,對(duì)于不同的對(duì)象, 所能感應(yīng)到的事件也會(huì)不同,譬如說當(dāng)你把鼠標(biāo)移進(jìn)某一區(qū)域時(shí)就會(huì)觸發(fā) MouseMove 事件,這很直觀,也容易理解,但也有些事件比較抽象,下面我來對(duì)一般的事件進(jìn)行一下解釋。 窗體和圖象框類事件 Paint 事件:當(dāng)某一對(duì)象在屏幕中被移動(dòng),改變尺寸或清除后,程序會(huì)自動(dòng)調(diào)用 Paint 事件。當(dāng)對(duì)象的 AutoDraw 屬性為 True(-1)時(shí),程序不會(huì)調(diào)用 Paint 事件。Resize 事件:當(dāng)對(duì)象的大小改變時(shí)觸發(fā) Resize 事件。 Load 事件:僅適用于窗體對(duì)象,當(dāng)窗體被裝載時(shí)運(yùn)行。 Unload 事件:僅適用于窗體對(duì)象,當(dāng)窗體被卸載時(shí)運(yùn)行。
2、然后,是改變控制項(xiàng)事件,Change 事件:當(dāng)對(duì)象的內(nèi)容發(fā)生改變時(shí),觸發(fā) Change 事件。最典型的例子是文本框(TextBox) 。 DropDown 事件:下彈事件,僅用于組合框(ComboBox)對(duì)象。 PathChange 事件:路徑改變事件,僅用于文件列表框(FileBox)對(duì)象。VB 常用的數(shù)據(jù)類型有:整型(Integer,表示-32768 至 32767 之間的整數(shù)) 、長(zhǎng)整型(Long,表示 -2,147,483,648 至 2,147,483,647 之間的整數(shù)) 、實(shí)型(Single,表示-3.37E+38 至 3.37E+38 之間的實(shí) 數(shù)) 、雙精度實(shí)型(Double,表示-1.67E+308 至 1.67E+308 之間的實(shí)數(shù)) ,字符(String,每個(gè)字符占 一字節(jié),可以儲(chǔ)存 0~65,535 個(gè)字符) ,布爾(Boolean,只有兩個(gè)值 True/-1,或 False/0) 。 數(shù)據(jù)類型的定義方法, 定義變量最簡(jiǎn)單的方法是用Dim關(guān)鍵字,Dim 變量名As 數(shù)據(jù)類型,也可以在一行中定義多個(gè)變量,Dim Index As Integer , Dim Number As Long。
3、然后,要調(diào)用或改變MyHome的值時(shí),類似于對(duì)對(duì)象的屬性的操作,VB 建立了一種新的變量類型――貨幣型變量,通過使用僅帶有二位小數(shù)的貨幣變量,就能避免因 使用實(shí)型變量而帶來的數(shù)值積累誤差問題。 VB 在調(diào)用函數(shù)(Function)時(shí),必須在函數(shù)名后跟一對(duì)括號(hào)。 VB 對(duì)白蘭地使用范圍重新做了規(guī)范,在 Basic 里把隱含變量都當(dāng)作全局變量,而在 VB 里對(duì)隱含變 量都當(dāng)作局部變量。 VB 里的說明語句(Declare) ,僅支持動(dòng)態(tài)鏈結(jié)庫(DLL)的子程序和無變量函數(shù)。 使用數(shù)組,必須事先用 Dim 或 Redim 進(jìn)行定義。在使用注釋語句之前必須先了解注釋的作用,注釋不僅僅是對(duì)程序的解釋,有時(shí)它對(duì)于程序的調(diào)試 也非常有用,譬如說可以利用注釋屏蔽一條語句以觀察變化,發(fā)現(xiàn)問題和錯(cuò)誤。以后注釋語句將是 我們?cè)诰幊汤镒罱?jīng)常用到的語句之一。 在 VB 里,注釋語句有兩種,一種是用“Rem”關(guān)鍵字,這跟 DOS 里的批處理文件的用法一樣,還有 一種是利用單引號(hào)“’”,例如: ‘Dim a As String 與 Rem Dim a As String 的作用是一致的。長(zhǎng)語句的分行 在比較早的版本中,因?yàn)闆]有象 C 等語言用“;”隔開語句與語句,VB 的語句是必須寫在一行里的, 不過后來版本的 VB 里如許用分行符“_”把一個(gè)長(zhǎng)語句分成若干行來存放。
4、然后,是Tahoma,8,134 如果你學(xué)過任何一種編程的話, 都會(huì)知道在程序里控制其流程的有兩種語句, 條件與循環(huán), 自然也不例外, VB 其實(shí)不管哪種語言,條件和循環(huán)的樣子都差不多,只不過各有各的規(guī)矩罷了。 在條件語句里,我們先來學(xué)習(xí)“If??Then??”語句。 它的一般語法是: If <條件> Then <語句> <語句> ??? End If 與 C 語言不同,VB 的條件語句更符合英語的語法,如果 Then 后面所跟的語句只有一條,可以寫成: If <條件> Then <語句> 而不用 End If。 有時(shí)我們還會(huì)用到 If <條件> Then <語句> Else <語句> End If 更可以在 Else 里在嵌套 If 語句,如: If <條件> Then <語句> Else If <語句> Else <語句> End If 。
5、然后,是Tahoma,8,134 Select Case a% Case 1 Print a= Case 2 Print a= Case Else Printa does not equal to 1 or 2, End Select ,循環(huán)結(jié)構(gòu)是計(jì)算機(jī)語言里一種重要的結(jié)構(gòu),它的應(yīng)用廣泛,最簡(jiǎn)單的例子是累加器的作用,還可以用于窮舉 法,更直觀的例子是把某件事重復(fù)指定的次數(shù),這樣就不用把要重復(fù)的語句輸入多次,而通過循環(huán)結(jié)構(gòu)完成, 非常方便。 C 語言里有一個(gè)for循環(huán)語句,VB 里也有For關(guān)鍵字,作用也差不多,只是 VB 的For語句更容易 理解。它的格式是: For <循環(huán)變量>=<初賦值> To <終值> [Step <步長(zhǎng)>],Next <循環(huán)變量> 在默認(rèn)情況下,Step 被設(shè)為1,可以省略,Step 也可以設(shè)為負(fù)值,Dim a= For I=1 To 10 a= Next I 這是一個(gè)最簡(jiǎn)單的累加器的例子,把 1 到 10 累加在一起,然后賦值給a這樣的效果和上面是一樣的,只 不過是倒著加罷了,請(qǐng)看: Dim a= For I=10 To 1 。
6、最后,While 后面都跟邏輯條件判斷,Do While ?? Loop 語句和While ?? Wend 語句作用相似,都是 先判斷 While 后面的條件是否為真,如果為真則執(zhí)行里面的語句,如果為假,則退出循環(huán),循 環(huán)直至條件為假終止。Do ?? Loop While 與前兩者的區(qū)別在于,它不管條件的真假,都會(huì)先執(zhí)行Do后面的語句,也就是說,它至少執(zhí)行語句一次。 與 While 用法相似的還有 Until 語句,它是直至條件為真則終止循環(huán),句式把 While 上述三個(gè)語句的 While 換成 Until 即可,但是因?yàn)槿菀子浕欤晕医ㄗh只用 While 即可。Until <條件>可以相當(dāng)于 While Not < 條件>。 For 循環(huán)和 Whlie 循環(huán)應(yīng)當(dāng)根據(jù)適當(dāng)?shù)沫h(huán)境使用,它們有時(shí)也可替換。運(yùn)算操作數(shù)學(xué)運(yùn)算 +:加法運(yùn)算,也適合于字符串的之間的合并運(yùn)算。 -:加法運(yùn)算。 *:乘法運(yùn)算。 /:除法運(yùn)算。 \:整除運(yùn)算。 Mod:求余運(yùn)算。例如:a Mod b 表示 a 被 b 整除以后的余數(shù)。 ^:冪運(yùn)算。A^B 表示以 A 為底的 B 次方。