(4) 方法(Method)
方法指的是控制對(duì)象動(dòng)作行為的方式。它是對(duì)象本身內(nèi)含的函數(shù)或過程,它也是一個(gè)動(dòng)作,是一個(gè)簡單的不必知道細(xì)節(jié)的無法改變的事件,但不稱作事件;同樣,方法也不是隨意的,一些對(duì)象有一些特定的方法。在VB里方法的調(diào)用形式是:
對(duì)象名.方法名
2. 屬性、方法和事件之間的關(guān)系
VB 對(duì)象具有屬性、方法和事件。屬性是描述對(duì)象的數(shù)據(jù);方法告訴對(duì)象應(yīng)做的事情;事件是對(duì)象所產(chǎn)生的事情,事件發(fā)生時(shí)可以編寫代碼進(jìn)行處理。
VB 的窗體和控件是具有自己的屬性、方法和事件的對(duì)象。可以把屬性看作一個(gè)對(duì)象的性質(zhì),把方法看作對(duì)象的動(dòng)作,把事件看作對(duì)象的響應(yīng)。
日常生活中的對(duì)象,如小孩玩的氣球同樣具有屬性、方法和事件。氣球的屬性包括可以看到的一些性質(zhì),如它的直徑和顏色。其它一些屬性描述氣球的狀態(tài)(充氣的或未充氣的)或不可見的性質(zhì),如它的壽命。通過定義,所有氣球都具有這些屬性;這些屬性也會(huì)因氣球的不同而不同。
氣球還具有本身所固有的方法和動(dòng)作。如:充氣方法(用氦氣充滿氣球的動(dòng)作),放氣方法(排出氣球中的氣體)和上升方法(放手讓氣球飛走)。所有的氣球都具備這些能力。
氣球還有預(yù)定義的對(duì)某些外部事件的響應(yīng)。例如,氣球?qū)Υ唐扑氖录憫?yīng)是放氣,對(duì)放手事件的響應(yīng)是升空。
在VB程序設(shè)計(jì)中,基本的設(shè)計(jì)機(jī)制就是:改變對(duì)象的屬性、使用對(duì)象的方法、為對(duì)象事件編寫事件過程。程序設(shè)計(jì)時(shí)要做的工作就是決定應(yīng)更改哪些屬性、調(diào)用哪些方法、對(duì)哪些事件作出響應(yīng),從而得到希望的外觀和行為。
3.事件驅(qū)動(dòng)模型
在傳統(tǒng)的或“過程化”的應(yīng)用程序中,應(yīng)用程序自身控制了執(zhí)行哪一部分代碼和按何種順序執(zhí)行代碼。從第一行代碼執(zhí)行程序并按應(yīng)用程序中預(yù)定的路徑執(zhí)行,必要時(shí)調(diào)用過程。
在事件驅(qū)動(dòng)的應(yīng)用程序中,代碼不是按照預(yù)定的路徑執(zhí)行,而是在響應(yīng)不同的事件時(shí)執(zhí)行不同的代碼片段。事件可以由用戶操作觸發(fā)、也可以由來自操作系統(tǒng)或其它應(yīng)用程序的消息觸發(fā)、甚至由應(yīng)用程序本身的消息觸發(fā)。這些事件的順序決定了代碼執(zhí)行的順序,因此應(yīng)用程序每次運(yùn)行時(shí)所經(jīng)過的代碼的路徑都是不同的。
因?yàn)槭录捻樞蚴菬o法預(yù)測的,所以在代碼中必須對(duì)執(zhí)行時(shí)的“各種狀態(tài)”作一定的假設(shè)。當(dāng)作出某些假設(shè)時(shí)(例如,假設(shè)在運(yùn)行來處理某一輸入字段的過程之前,該輸入字段必須包含確定的值),應(yīng)該組織好應(yīng)用程序的結(jié)構(gòu),以確保該假設(shè)始終有效(例如,在輸入字段中有值之前禁止使用啟動(dòng)該處理過程的命令按鈕)。
在執(zhí)行中代碼也可以觸發(fā)事件。例如,在程序中改變文本框中的文本將引發(fā)文本框的 Change 事件。如果 Change 事件中包含有代碼,則將導(dǎo)致該代碼的執(zhí)行。如果原來假設(shè)該事件僅能由用戶的交互操作所觸發(fā),則可能會(huì)產(chǎn)生意料之外的結(jié)果。正因?yàn)檫@一原因,所以在設(shè)計(jì)應(yīng)用程序時(shí)理解事件驅(qū)動(dòng)模型并牢記在心是非常重要的。
4.交互式開發(fā)
傳統(tǒng)的應(yīng)用程序開發(fā)過程可以分為三個(gè)明顯的步驟:編碼、編譯和測試代碼。但是 Visual Basic 與傳統(tǒng)的語言不同,它使用交互式方法開發(fā)應(yīng)用程序,使三個(gè)步驟之間不再有明顯的界限。
VB在編程者輸入代碼時(shí)便進(jìn)行解釋,即時(shí)捕獲并突出顯示大多數(shù)語法或拼寫錯(cuò)誤?雌饋砭拖笠晃粚<以诒O(jiān)視代碼的輸入。
除即時(shí)捕獲錯(cuò)誤以外,VB 也在輸入代碼時(shí)部分地編譯該代碼。當(dāng)準(zhǔn)備運(yùn)行和測試應(yīng)用程序時(shí),只需極短時(shí)間即可完成編譯。如果編譯器發(fā)現(xiàn)了錯(cuò)誤,則將錯(cuò)誤突出顯示于代碼中。這時(shí)可以更正錯(cuò)誤并繼續(xù)編譯,而不需從頭開始。
由于 VB的交互特性,代碼運(yùn)行的效果可以在開發(fā)時(shí)進(jìn)行測試,而不必等到編譯完成以后。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |