官术网_书友最值得收藏!

1.4 可視化編程的基本概念

VB是面向?qū)ο蟮目梢暬木幊陶Z言,它將代碼和數(shù)據(jù)集成到對象中,運用對象來完成設(shè)定任務(wù)。VB編程時不用單純地編寫代碼,而是考慮如何創(chuàng)建對象,利用對象來簡化程序設(shè)計。VB中的窗體和控件都是對象,理解對象的概念對VB程序設(shè)計十分重要。

1.4.1 對象和類

1.對象

現(xiàn)實生活中,任何可見的實體都可以稱作對象(Object),而在VB中,窗體和控件都是對象。工具箱中的工具,如文本框、標簽、命令按鈕等,用這些工具可在窗體上畫出各種各樣的控件對象。工具箱中每一個圖標就代表了一個控件(Control)類。這些控件類就是一種“對象”的抽象。在程序設(shè)計過程中,把一個控件放在窗體上,就是創(chuàng)建一個具體的控件對象。一個具體的窗體也是一個對象。窗體除了本身是對象外,它還是其他控件的容器,因為我們創(chuàng)建的控件對象必須放在窗體上。

2.類

在現(xiàn)實生活中,許多對象具有相同或相似的特征,執(zhí)行相同的操作,稱之為同一類對象。類是對一組對象中共性的屬性和行為進行的抽象。

VB提供的面向?qū)ο蟮某绦蛟O(shè)計的一個主要特性就是類的使用。類是一種特殊的概念,它將許多具有相近屬性的對象,集合在一起構(gòu)成了類。VB中工具箱中的所有控件都稱為類,只有當它們被添加到窗體上時,才可以得到該類的一個對象。

1.4.2 屬性

屬性是指對象所具有的特征,例如,窗體的外觀、窗體的背景顏色、窗體的寬度和高度都是窗體的屬性。

可以通過設(shè)置對象的屬性值來改變對象的外觀。設(shè)置對象的屬性有兩種方法。

方法一:選定對象,然后在對象的屬性窗口中找到相應(yīng)的屬性進行設(shè)置。每當選擇一個屬性時,在屬性窗口的下部就顯示該屬性的一個簡短提示。

方法二:在程序代碼中通過編程設(shè)置。設(shè)置方法如下。

        對象名.屬性名=屬性值

例如,在程序界面設(shè)計中,可以直接選定窗體Form1,然后在屬性窗口中將其Caption屬性改為“我的例題”;也可以在代碼窗口中的程序中添加如下一條語句來實現(xiàn)。

        Form1.Caption = "我的例題"

1.4.3 事件

事件是對象要完成的任務(wù),即對象響應(yīng)的動作。在VB中,事件是預(yù)先定義好的、能夠被對象識別的動作,如單擊(Click)、鼠標移動(MouseMove)。

當事件發(fā)生時,VB將檢測兩條信息,即發(fā)生的是哪種事件和哪個對象接收了事件。

在VB中由于系統(tǒng)事先已經(jīng)對每個對象都定義好一系列事件,設(shè)計者要做的就是判定該事件是否響應(yīng)及如何響應(yīng),即為哪些事件編寫程序。

事件過程的名字是由對象名和事件名兩部分組成,兩者之間用一下畫線連接,其一般格式如下。

        Private Sub對象名_事件名
      (事件響應(yīng)代碼)
        End Sub

其中,Sub是定義過程開始的語句,End Sub是定義過程結(jié)束語句,關(guān)鍵字Private表示該過程是局部過程。

具體編程時,用戶可以在過程開始語句和結(jié)束語句之間添加實現(xiàn)具體功能的程序代碼。

例如,單擊窗體Form1,在其上顯示“你好,再見!”,則對應(yīng)的事件如下。

        Private Sub Form1_Click()
            Print "你好,再見!"
        End Sub

VB采用的是面向?qū)ο蟮氖录?qū)動編程機制,其基本思路是:當一個程序開始運行后,若沒有發(fā)生任何事件,程序就處于等待狀態(tài);只有發(fā)生了某個可以識別的事件,程序才會運行所對應(yīng)的事件過程。

1.4.4 方法

方法是VB為程序設(shè)計人員提供的一些特殊的過程和函數(shù),用來完成一定的操作或?qū)崿F(xiàn)一定的功能。每一種對象所能調(diào)用的“方法”是不完全相同的。

方法的調(diào)用形式如下。

        對象名.方法名[可選參數(shù)項]

例如:Form1.Print “我喜歡乒乓球”

該語句是使用Form1對象的Print方法在Form1窗體中顯示字符串“我喜歡乒乓球”。在上面的調(diào)用格式中,如果省略了對象名,則隱含指當前對象。

在代碼編寫窗口中,如果我們輸入窗體上已有對象名的名稱后,再輸入一個“.”, VB就會智能地顯示出這個對象所有的屬性名和方法名。屬性名前面有個圖標,而方法名的圖標是

主站蜘蛛池模板: 阿拉尔市| 阿拉善左旗| 新兴县| 武夷山市| 龙门县| 德保县| 略阳县| 锡林浩特市| 介休市| 嘉峪关市| 安多县| 夏河县| 会理县| 石棉县| 邻水| 永州市| 含山县| 共和县| 郧西县| 荣成市| 常熟市| 澄城县| 荥阳市| 偏关县| 甘洛县| 庆安县| 日喀则市| 邵武市| 贵州省| 大厂| 郧西县| 来凤县| 襄垣县| 光山县| 蓬溪县| 墨江| 望都县| 沛县| 巴林左旗| 弥渡县| 嘉峪关市|