- Visual Basic程序設(shè)計
- 陸奎 殷曉波
- 1448字
- 2019-08-15 12:02:45
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就會智能地顯示出這個對象所有的屬性名和方法名。屬性名前面有個圖標,而方法名的圖標是
。
- Learning Spring 5.0
- R語言游戲數(shù)據(jù)分析與挖掘
- C語言從入門到精通(第4版)
- 差分進化算法及其高維多目標優(yōu)化應(yīng)用
- Mastering AndEngine Game Development
- TypeScript項目開發(fā)實戰(zhàn)
- Spring MVC+MyBatis開發(fā)從入門到項目實踐(超值版)
- C++從入門到精通(第6版)
- Mastering Elixir
- Visual C++程序設(shè)計與項目實踐
- Python應(yīng)用與實戰(zhàn)
- Mastering Magento Theme Design
- 給產(chǎn)品經(jīng)理講技術(shù)
- Modular Programming with PHP 7
- 面向WebAssembly編程:應(yīng)用開發(fā)方法與實踐