如果你還記得上節(jié)中的內(nèi)容,我們提到過(guò)如果在“窗體設(shè)計(jì)區(qū)域”的某個(gè)組件(控件)上雙擊鼠標(biāo),會(huì)出現(xiàn)“代碼編輯窗口”,也就是如下圖的窗口,我們可以在其中輸入或是修改程序的代碼。在我們雙擊控件到寫(xiě)入代碼的這個(gè)過(guò)程中,我們涉及到了一個(gè)很重要的概念,這是VB與QBASIC的主要差別之一,大家知道在QBASIC包括Tubro C,TubroPascal等語(yǔ)言中程序從一開(kāi)始就需要我們一點(diǎn)點(diǎn)的寫(xiě)代碼來(lái)實(shí)現(xiàn)所有的功能,比如程序運(yùn)行的界面,輸入輸出,鍵盤(pán)控制等,它們?cè)诔绦蛑畜w現(xiàn)為一個(gè)個(gè)的過(guò)程或者是函數(shù)及子程序,它們都是完全面向過(guò)程的編程語(yǔ)言;但是現(xiàn)在的VB、VC、DELPHI等編程語(yǔ)言,都提供了可視化的編程環(huán)境,備有一整套常見(jiàn)的組件(控件)供我們使用,這些控件可以看作是對(duì)象(VB嚴(yán)格的說(shuō)不是完全面向?qū)ο蟮木幊陶Z(yǔ)言),我們寫(xiě)程序時(shí)會(huì)直接與這些對(duì)象打交道,而不象原來(lái)。所以在VB中大部分的代碼是與這些相關(guān)的,例如下圖所示的一段代碼,它是我們?cè)谝粋€(gè)按鈕(Command)上雙擊鼠標(biāo)而由VB自動(dòng)產(chǎn)生的一個(gè)子過(guò)程,Private Sub Command1_Click()是子過(guò)程的開(kāi)始,End Sub表示子過(guò)程的結(jié)束。然后我們可以在子過(guò)程中添加程序代碼,也就是由我們自己來(lái)寫(xiě)當(dāng)按鈕被點(diǎn)擊時(shí),程序所做出的響應(yīng)。
下面我們便來(lái)分析一下這段代碼。
VB中聲明一個(gè)變量使用“Dim 變量名 As 變量類(lèi)型”的方法,一般在程序中使用的到的變量都應(yīng)該有變量聲明,如上例中的a、b、i分別被定義為整型和字符串型變量,VB中的變量類(lèi)型有以下幾種:
數(shù)據(jù)類(lèi)型 說(shuō)明
Byte 二進(jìn)制數(shù)
Boolean 真假值
Integer 整數(shù)
Long 長(zhǎng)整型
Single 實(shí)數(shù)
Double 雙精度型
Currency 貨幣
Date 日期和時(shí)間
Object 對(duì)象
String 字符串
Variant 可變類(lèi)型
控制結(jié)構(gòu)和循環(huán)結(jié)構(gòu)是程序設(shè)計(jì)中常見(jiàn)的兩種結(jié)構(gòu)。
計(jì)算機(jī)在運(yùn)行程序的時(shí)候,執(zhí)行語(yǔ)句的順序是從上向下的。 有些簡(jiǎn)單程序可以只用單向流程來(lái)編寫(xiě),但稍微復(fù)雜的程序就要靠控制語(yǔ)句來(lái)控制程序執(zhí)行的流程??刂平Y(jié)構(gòu)主要有兩種,分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
分支結(jié)構(gòu):分支結(jié)構(gòu)事實(shí)上是一種選擇,在不同的條件下選擇執(zhí)行不同的程序段。實(shí)現(xiàn)分支結(jié)構(gòu)的語(yǔ)句有很多,最常用的是if……then……else……。例如:
……
if 條件 then
{程序段一}
else
{程序段二}
end if
……
如果條件滿(mǎn)足了,電腦將執(zhí)行程序段一中的語(yǔ)句,然后跳過(guò)程序段二,執(zhí)行下面的語(yǔ)句。如果條件不滿(mǎn)足,電腦將跳過(guò)程序段一種的語(yǔ)句,執(zhí)行程序段二,然后繼續(xù)執(zhí)行下面的語(yǔ)句。
循環(huán)結(jié)構(gòu):循環(huán)結(jié)構(gòu)就是讓電腦反復(fù)的執(zhí)行某一程序段落干次。 用Do……Loop可以循環(huán)重復(fù)執(zhí)行一語(yǔ)句塊,且重復(fù)次數(shù)不定。 在已知循環(huán)次數(shù)的條件下,用For……next可以反復(fù)執(zhí)行統(tǒng)一語(yǔ)句塊。
以上兩種結(jié)構(gòu)你可以參照?qǐng)D中所示的代碼,仔細(xì)體會(huì)一下,今天就講這么多了,下節(jié)我們就要進(jìn)入實(shí)例式的控件學(xué)習(xí)。
聯(lián)系客服