Visual Basic 6.0程序設(shè)計(jì)教程課件_第1頁
Visual Basic 6.0程序設(shè)計(jì)教程課件_第2頁
Visual Basic 6.0程序設(shè)計(jì)教程課件_第3頁
Visual Basic 6.0程序設(shè)計(jì)教程課件_第4頁
Visual Basic 6.0程序設(shè)計(jì)教程課件_第5頁
已閱讀5頁,還剩114頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

程式設(shè)計(jì)VisualBasic6.0第1章VisualBasic6.0簡介VisualBasic的特點(diǎn)可視化:Visual的英文含義既是可視化,在可視化環(huán)境下創(chuàng)作前端介面也就如同擺放積木。面向?qū)ο螅好嫦驅(qū)ο缶幊淌墙⒃陬惖幕A(chǔ)上的,其通過類的封裝而使根源程式更加便於維護(hù)。部件編程:在VisualBasic中進(jìn)行部件編程是建立在微軟的部件對象模型(COM)基礎(chǔ)上的。事件驅(qū)動(dòng):在事件驅(qū)動(dòng)模式下,程式的執(zhí)行是依靠系統(tǒng)能夠被識別的觸發(fā)事件啟動(dòng)的。運(yùn)行環(huán)境操作系統(tǒng):NTServer4.0、NTWorkstation4.0、Windows95,或更高版本。CPU:486DX/66MHz或更高的處理器。記憶體:Windows95/98下要求24MB以上的記憶體,WindowsNT下要求32MB以上。磁片空間:對於標(biāo)準(zhǔn)版或?qū)I(yè)版,典型安裝48MB,完全安裝80MB。其他設(shè)備:CD-ROM驅(qū)動(dòng)器,滑鼠或其他游標(biāo)控制設(shè)備。啟動(dòng)及退出

單擊Windows“開始”按鈕,指向“程式”,再指向MicrosoftVisualBasic6.0圖示,就可以啟動(dòng)VisualBasic6.0。並進(jìn)入到

VisualBasic6.0集成開發(fā)環(huán)境。當(dāng)需要退出VisualBasic時(shí),可以關(guān)閉VisualBasic集成環(huán)境窗口,或通過菜單命令“檔\退出”退出。VisualBasic6.0集成開發(fā)環(huán)境第2章集成開發(fā)環(huán)境VisualBasic6.0菜單

菜單是在集成開發(fā)環(huán)境下發(fā)布命令的最基本手段。VisualBasic頂級菜單有:檔、編輯、視圖、工程、格式、運(yùn)行、查詢、圖表、工具、外接程式、窗口、幫助,但菜單命令是通過子菜單中的子菜單項(xiàng)發(fā)出的。檔菜單

檔菜單主要用於建立、打開、添加、移去、保存工程和文件,包括:新建工程、打開工程、添加工程、移除工程、保存工程、工程另存為、保存檔、檔另存為、列印、列印設(shè)置、生成工程等子菜單項(xiàng)。編輯菜單

在對工程進(jìn)行修改時(shí),編輯菜單用於各種編輯操作。包括:撤銷、重複、剪切、複製、粘貼、粘貼鏈接、刪除、全選、查找、縮進(jìn)、凸出、插入檔、屬性/方法列表、快速資訊、參數(shù)資訊書簽等子菜單項(xiàng)。視圖菜單

視圖菜單用於顯示各種窗口及和窗口有關(guān)的操作。包括:代碼窗口、對象窗口、定義、最後位置、對象流覽器、立即窗口、本地窗口、監(jiān)視窗口、調(diào)用堆疊、工程資源管理器、屬性窗口、窗體佈局窗口、屬性頁、表、縮放、顯示窗格、工具箱、調(diào)色板、工具欄等子菜單項(xiàng)。工程菜單

工程菜單用於為當(dāng)前工程創(chuàng)建模組、作對象引用或提供各種設(shè)計(jì)器。包括:添加窗體、添加MDI窗體、添加模組、添加用戶控件、添加屬性頁、添加用戶文檔、添加設(shè)計(jì)器、添加檔、移除、引用、部件、工程屬性等子菜單項(xiàng)。格式菜單

格式菜單用於介面設(shè)計(jì),能使介面中的控件規(guī)範(fàn)排列。包括:對齊、統(tǒng)一尺寸、按網(wǎng)格調(diào)整大小、水準(zhǔn)間距、垂直間距、在窗體中居中對開、順序、鎖定控件等子菜單項(xiàng)。調(diào)試菜單

調(diào)試菜單用於調(diào)試、監(jiān)視程式。包括:逐語句、逐過程、跳出、運(yùn)行到游標(biāo)處、添加監(jiān)視、編輯監(jiān)視、快速監(jiān)視、切換中斷點(diǎn)、清除所有中斷點(diǎn)、設(shè)置下一條語句、顯示下一語句等子菜單項(xiàng)。運(yùn)行菜單

查詢菜單中各條菜單命令用於資料庫表的查詢及相關(guān)操作。所提供的各種查詢設(shè)計(jì)工具,使用戶能夠通過可視化工具創(chuàng)建SQL語句,實(shí)現(xiàn)對數(shù)據(jù)庫的查詢、修改。查詢菜單

運(yùn)行菜單用於執(zhí)行程式。包括:啟動(dòng)、全編譯執(zhí)行、中斷、結(jié)束、重新啟動(dòng)等子菜單項(xiàng)。圖表菜單

圖表菜單中各條菜單命令用於資料庫中表、視圖的各種相關(guān)操作。所提供的各種圖表設(shè)計(jì)器,使用戶能夠用可視化的手段操作表及其相互關(guān)係,和創(chuàng)建和修改應(yīng)程式所包含的資料庫對象。工具菜單

工具菜單包括:添加過程、過程屬性、菜單編輯器、選項(xiàng)、發(fā)佈等子菜單項(xiàng)。外接程式菜單

外接程式菜單工程菜單用於為當(dāng)前工程創(chuàng)建含:可視化數(shù)據(jù)管理器、外接程式管理器等子菜單項(xiàng)。窗口菜單

窗口菜單用於調(diào)整已打開窗口的排列方式。包括:拆分、水準(zhǔn)平輔、垂直平鋪、層疊、排列圖示等子菜單項(xiàng)。幫助菜單

幫助菜單用於給用戶提供各種方式的幫助。包括:內(nèi)容、索引、搜索、技術(shù)支持等子菜單項(xiàng)。VisualBasic6.0工具欄

工具欄的作用是可以通過其上面的圖示按鈕執(zhí)行菜單命令,由此加快操作速度。

VisualBasic能提供“編輯”、“標(biāo)準(zhǔn)”、“窗體編輯器”、“調(diào)試”等幾個(gè)工具欄,用戶也可以按自己的需要“自定義”工具欄,可以通過“視圖\工具欄”菜單項(xiàng)下的子菜單項(xiàng)選取它們。

VisualBasic各種工具欄中最常用的是“標(biāo)準(zhǔn)工具欄”

VisualBasic6.0工具箱

工具箱是VisualBasic用於為開發(fā)提供控件的面板,通過它可以往設(shè)計(jì)中的窗體設(shè)置各種控件。除了VisualBasic內(nèi)置控件之外,用戶還可以通過菜單“工程\部件”打開“部件”對話框,從中能添加控件、設(shè)計(jì)器或可插入對象到工具箱中,也可以引用已加載的控件工程。第3章數(shù)據(jù)類型及操作常量

在程式中設(shè)置的常量,既是用識別字表示永遠(yuǎn)不變的數(shù)值或字串。通過採用有意義的識別字表示常量值,由此可以提高源代碼的可讀性和可維護(hù)性。值得注意的是:常量不能象對變數(shù)那樣在程式運(yùn)行過程中給常量識別字賦以新值。常量有兩種來源:內(nèi)部的或系統(tǒng)定義的,其由VisualBasic系統(tǒng)或引用的對象提供。用戶自定義的,其需要用Const語句來聲明。用戶自定義常量(1)

用戶自定義常量在使用前需要聲明,由此使該標(biāo)識符能夠被程式識別。其語法是:

[Public/Private]Const常量名[As類型]=常量運(yùn)算式例如:

ConstconPi=3.14159265358979ConstconMaxPlanetsAsInteger=9

一旦已定義常量,就可將其放置在代碼中使用。用戶自定義常量(2)一旦已定義常量,就可將其放置在代碼中使用。例如:ConstconMaxPlanetsAsInteger=9ConstnumPeopleAsInteger=19StaticSolarSystem(1ToconMaxPlanets)IfnumPeople>conWorldPopThenExitSub

變數(shù)

在VisualBasic中執(zhí)行應(yīng)用程式期間,用變數(shù)臨時(shí)存儲數(shù)據(jù)。變數(shù)有名字(變數(shù)識別字)和數(shù)據(jù)類型(確定變數(shù)能夠存儲的數(shù)據(jù)的種類)??梢园炎償?shù)看作記憶體中存放未知值的所在處。

聲明變數(shù)

聲明變數(shù)就是事先將變數(shù)通知程式,由此使變數(shù)的使用合法。語法:Dim/Private/Public/Static變數(shù)名[As類型]

例如:

DimIAsIntegerPrivateYourNameAsString,BillsPaidAsCurrencyPublicTest,Amount,JAsInteger變數(shù)範(fàn)圍

變數(shù)的範(fàn)圍確定了能夠知曉該變數(shù)存在的那部分代碼。一個(gè)變數(shù)在劃定範(fàn)圍時(shí)被看作是過程級變數(shù)、模組級變數(shù),或是公用變數(shù)。這取決於聲明該變數(shù)時(shí)採用的方式。

過程級變數(shù)

過程級變數(shù)只有在聲明它們的過程中才能被識別,也稱它們?yōu)榫植孔償?shù)。局部變數(shù)只能用Dim或Static關(guān)鍵字來聲明它們。例如:

DimintTempAsIntegerStaticintPermanentAsInteger

用Dim聲明的變數(shù)只在過程執(zhí)行期間才存在。而用Static聲明的局部變數(shù),則在整個(gè)應(yīng)用程式運(yùn)行期一直存在,稱做:靜態(tài)變數(shù)。模組級變數(shù)

模組級變數(shù)對該模組(包括:標(biāo)準(zhǔn)模組、窗體模組、類模組)的所有過程都可用,但對其他模組的代碼不可用。可在模組頂部的聲明段用Private或Dim關(guān)鍵字聲明模組級變數(shù)。例如:

PrivateintTempAsInteger公用變數(shù)

為了使模組級的變數(shù)在其他模組中也有效,需要用Public關(guān)鍵字聲明。經(jīng)過Public關(guān)鍵字聲明的變數(shù)是公用變數(shù),其值可用於應(yīng)用程式的所有過程。只能在模組的聲明段中用Public關(guān)鍵字聲明公用變數(shù),例如:

PublicintTempAsInteger數(shù)據(jù)類型

所有變數(shù)都具有數(shù)據(jù)類型,以決定能夠存儲哪種數(shù)據(jù)。變數(shù)的數(shù)據(jù)類型決定了如何將代表這些值的位存儲到電腦的記憶體中。除變數(shù)外,數(shù)據(jù)類型也用於其他場合。如在給對象屬性賦值時(shí),這個(gè)值就有數(shù)據(jù)類型;函數(shù)的參數(shù)也有數(shù)據(jù)類型。事實(shí)上,在VisualBasic中,凡是涉及數(shù)據(jù)就與數(shù)據(jù)類型有關(guān),包括:變數(shù)、常量、數(shù)組,以及函數(shù)、過程中的參數(shù)。數(shù)值型數(shù)據(jù)VisualBasic支持幾種數(shù)值數(shù)據(jù)類型—Integer(整型)、Long(長整型)、Single(單精確度浮點(diǎn)型)、Double(雙精度浮點(diǎn)型)、Currency(貨幣型),另外,Byte(字節(jié)型)也可用於數(shù)值計(jì)算。所有數(shù)值變數(shù)都可相互賦值。在將浮點(diǎn)數(shù)賦予整數(shù)之前,VisualBasic將浮點(diǎn)數(shù)的小數(shù)部分四捨五入到整數(shù)。String數(shù)據(jù)類型

String型變數(shù)用於存儲字串,如下列語句:

DimSAsStringS="Database"

在缺省情況下,String型變數(shù)是一個(gè)可變長度的字串變數(shù),隨著對其賦予新數(shù)據(jù),它的長度可增可減。但也可以聲明具有固定長度String型變數(shù),語法是:

Dim/Private/Public/StaticvariablenameString*sizeBoolean數(shù)據(jù)類型

若變數(shù)的值只是“true/false”、“yes/no”、“on/off”資訊,則可將它聲明為Boolean類型。Boolean的缺省值為False。Date數(shù)據(jù)類型

用於存儲Date和Time值,VisualBasic接受許多種文字的Date和Time格式。例如:

DimSomeDateAsDate

SomeDate=#1980-03-16#

SomeDate=#3-6-9313:20#

SomeDate=#March27,19931:20am#Object數(shù)據(jù)類型

Object變數(shù)採用32位(4個(gè)位元組)地址來存儲對象,該地址可引用應(yīng)用程式中或某些其他應(yīng)用程式中的對象??梢噪S後(用Set語句)指定一個(gè)被聲明為Object的變數(shù)去引用應(yīng)用程式所識別的任何實(shí)際對象,如:

DimobjDbAsObjectSetobjDb=OpenDatabase("c:\Vb5\Biblio.mdb")Variant數(shù)據(jù)類型Variant型是聲明變數(shù)時(shí)的缺省類型,能夠存儲所有類型的數(shù)據(jù)。如果把數(shù)據(jù)賦予Variant變數(shù),則不必在這些數(shù)據(jù)的類型間進(jìn)行轉(zhuǎn)換;VisualBasic會自動(dòng)完成任何必要的轉(zhuǎn)換。例如:

DimSomeValue

SomeValue="17"

SomeValue=SomeValue-15

SomeValue="U"&SomeValue自定義數(shù)據(jù)類型

在模組的聲明部分可以使用Type語句建立自定義數(shù)據(jù)類型。語法格式:

[Private|Public]Type自定義類型名 元素As類型

…EndType數(shù)組

數(shù)組使用相同名字引用一系列變數(shù),並用數(shù)字(索引)來識別它們。一個(gè)數(shù)組中的所有元素具有相同的數(shù)據(jù)類型。在VisualBasic中有兩種類型的數(shù)組:固定大小的數(shù)組,它總是保持同樣的大?。灰约霸谶\(yùn)行時(shí)大小可以改變的動(dòng)態(tài)數(shù)組。固定大小的數(shù)組

語法:

Dim/Private/Public/Static數(shù)組名([下界To]上界)[As數(shù)據(jù)類型]

聲明數(shù)組時(shí),在數(shù)組名之後跟一個(gè)用括弧括起來確定上界、下界。上界、下界取值在Long數(shù)據(jù)類型的範(fàn)圍的範(fàn)圍內(nèi)。缺省的下界為0。例如:

DimSums(100To120)AsString動(dòng)態(tài)數(shù)組(1)

創(chuàng)建動(dòng)態(tài)數(shù)組的步驟:第一步是聲明動(dòng)態(tài)數(shù)組,其和聲明固定大小的數(shù)組類似,但給數(shù)組附以一個(gè)空維數(shù)表,例如:

DimDynArray()

第二步是用ReDim

語句在程式執(zhí)行過程中給數(shù)組指定維數(shù)和分配實(shí)際的元素個(gè)數(shù),例如:

ReDim

DynArray(4to12)動(dòng)態(tài)數(shù)組(2)

值得注意的是:ReDim

語句與Dim語句、Static語句不同,ReDim

語句是一個(gè)可執(zhí)行語句,通過在應(yīng)用程式中執(zhí)行ReDim

語句,給維數(shù)和元素個(gè)數(shù)待定的數(shù)組指定維數(shù)和元素個(gè)數(shù)。在程式中還可以使用變數(shù)設(shè)置動(dòng)態(tài)數(shù)組的邊界。例如:

ReDim

DynArray(X,Y)運(yùn)算符和運(yùn)算式

程式中對數(shù)據(jù)的基本加工,是依靠運(yùn)算符實(shí)現(xiàn)的。在VisualBasic中運(yùn)算符的類型有:賦值運(yùn)算符、算術(shù)運(yùn)算符、比較運(yùn)算符、連接運(yùn)算符、邏輯運(yùn)算符。通過常量、變數(shù)、運(yùn)算符、函數(shù)等的組合,由此構(gòu)成運(yùn)算式。賦值運(yùn)算符

VisualBasic中的賦值運(yùn)算符“=”用來給變數(shù)、數(shù)組或?qū)ο蟮膶傩再x值,即把運(yùn)算符右邊的內(nèi)容(包括常量、變數(shù)、函數(shù)返回值或?qū)ο蟮膶傩裕┵x給運(yùn)算符左邊的變數(shù)或?qū)傩?。語法格式:Variable=運(yùn)算式其中variable可以是變數(shù)、數(shù)組的元素、運(yùn)行時(shí)可寫的對象的屬性。運(yùn)算式可以是常數(shù)、常量、變數(shù)或函數(shù)調(diào)用,但必須有確定的值。算術(shù)運(yùn)算符

用來進(jìn)行算術(shù)運(yùn)算,有:+(加)、-(減)、*(乘)、/(除)、\(整除)、Mod(求模)、^(乘方)等運(yùn)算符。比較運(yùn)算符

比較運(yùn)算符包括:<(小於)、<=(小於或等於)、>(大於)、>=(大於或等於)、<>(不等於)和=(等於),用來反映兩個(gè)數(shù)值或字串運(yùn)算式之間的關(guān)係。關(guān)係成立,返回True(真);關(guān)係不成立,返回False(假);兩個(gè)運(yùn)算式中若有Null,則返回Null。連接運(yùn)算符

&、+運(yùn)算符都能用於進(jìn)行兩個(gè)字串的連接,但&運(yùn)算符強(qiáng)制兩個(gè)運(yùn)算式按字串連接,儘管被連接的運(yùn)算式不是字串也是如此。而+運(yùn)算符則較複雜,當(dāng)兩個(gè)運(yùn)算式都是字串時(shí)按字串連接,否則視具體情況會有不同結(jié)果。因此,在進(jìn)行字串連接時(shí)一般使用&運(yùn)算符。邏輯運(yùn)算符

邏輯運(yùn)算符包括:Not(非)、And(與)、Or(或)、Xor(異或)、Equ(邏輯等於)和Imp(邏輯蘊(yùn)涵),用於表達(dá)兩個(gè)邏輯運(yùn)算式之間的關(guān)係。在進(jìn)行邏輯運(yùn)算時(shí),只要參入運(yùn)算的運(yùn)算式中有一個(gè)為Null,則將返回Null。運(yùn)算符優(yōu)先順序

在運(yùn)算式中,當(dāng)運(yùn)算符不止一種時(shí),要先處理算術(shù)運(yùn)算符,接著處理比較運(yùn)算符,然後再處理邏輯運(yùn)算符。算術(shù)運(yùn)算符優(yōu)先順序由高至低是:指數(shù)運(yùn)算(^)、負(fù)數(shù)(–)、乘法和除法(*、/)、整數(shù)除法(\)、求模運(yùn)算(Mod)、加法和減法(+、–)、字串連接(&)。邏輯運(yùn)算符優(yōu)先順序由高至低是:Not、And、Or、Xor、Eqv、Imp。所有比較運(yùn)算符的優(yōu)先順序都相同。第4章程式結(jié)構(gòu)程式流程控制

程式的基本運(yùn)行方式是自頂向下地順序執(zhí)行各條語句,被稱做順序結(jié)構(gòu)。對於簡單的問題,依靠順序結(jié)構(gòu)就可以完成任務(wù);但對於稍微複雜一點(diǎn)的問題,單純依靠順序結(jié)構(gòu)也許就不夠了,而必須在程式中加入更多的控制。程式流程的控制是通過有效的控制結(jié)構(gòu)來實(shí)現(xiàn)的,包括:分支結(jié)構(gòu)、迴圈結(jié)構(gòu)。分支結(jié)構(gòu)

分支結(jié)構(gòu)的作用是使程式依照條件而走不同的支路。VisualBasic支持的分支結(jié)構(gòu)有:

If...Then

If...Then...Else

SelectCase

程式中,往往根據(jù)需要選擇合適的分支結(jié)構(gòu)。If...Then語句

If...Then

結(jié)構(gòu)可以有條件地執(zhí)行其結(jié)構(gòu)內(nèi)的一條或多條語句。語法格式:

If

條件運(yùn)算式

Then

多條語句

EndIf

可以使用

If...Then...Else語句建立多個(gè)分支流程,並根據(jù)條件選擇其中一個(gè)分支。語法結(jié)構(gòu):

If條件1Then[語句塊1][ElseIf

條件2Then[語句塊2]]...Else

[語句塊n]]EndIf

If...Then...Else語句SelectCase語句

SelectCase是用於實(shí)現(xiàn)多重選擇,其作用與If...Then...Else語句類似。語法結(jié)構(gòu)是:

SelectCase測試條件

[Case運(yùn)算式1[語句塊1]][Case運(yùn)算式2[語句塊2]][CaseElse[語句塊n]]EndSelect迴圈結(jié)構(gòu)

迴圈的作用是允許某個(gè)程式段被重複執(zhí)行。VisualBasic支持的迴圈結(jié)構(gòu)有:

Do...Loop

For...Next

ForEach...Next

程式中,往往根據(jù)需要選擇合適的迴圈結(jié)構(gòu)。Do...Loop迴圈(1)

Do...Loop

語句是通過計(jì)算條件值以決定是否繼續(xù)執(zhí)行,而產(chǎn)生迴圈效果。Do...Loop語句有幾種演變形式。

形式一:

DoWhile條件運(yùn)算式

語句塊

Loop

形式二:

DoUntil條件運(yùn)算式

語句塊

LoopDo...Loop迴圈(2)

形式三:

Do

語句塊

Loop

While條件運(yùn)算式形式四:

Do

語句塊

LoopUntil條件運(yùn)算式

For...Next迴圈

在知道要執(zhí)行多少次時(shí),則可以使用For...Next迴圈。與Do迴圈不同,F(xiàn)or迴圈使用一個(gè)叫做計(jì)數(shù)器的變數(shù),每重複一次迴圈之後,計(jì)數(shù)器變數(shù)的值就會增加或者減少。For迴圈的語法如下:

For計(jì)數(shù)器=初始值To終止值[Step增量]

語句塊

Next[計(jì)數(shù)器]

其中,參數(shù):計(jì)數(shù)器、初始值、終止值和增量都必須是數(shù)值型的變數(shù)。

ForEach...Next迴圈

ForEach...Next迴圈與For...Next迴圈類似,但它是以對象集合中的每一個(gè)元素作為重複依據(jù)的,而不是按次數(shù)重複。如果不知道一個(gè)集合有多少元素,F(xiàn)orEach...Next迴圈非常有用。語法格式:

ForEach元素In集合語句塊

Next元素

過程和函數(shù)

過程是構(gòu)成程式邏輯部件的基本單位,將程式分割成較小的邏輯部件可以簡化程式設(shè)計(jì)任務(wù),結(jié)構(gòu)化設(shè)計(jì)就是建立在這個(gè)思路之上。在

VisualBasic中使用的過程有:

Sub過程——不返回值;又被稱做子過程。

Function過程——返回值;又被稱做函數(shù)。

子過程

在VisualBasic中子過程包括通用過程和事件過程,它們的定義語法類似,差別是調(diào)用方式一般不同。通用過程往往是由程式中的語句調(diào)用。事件過程往往是由用戶事件觸發(fā)。通用過程

通用過程是由程式中的語句調(diào)用的過程。它一般由用戶根據(jù)需要自主建立,其作用是可以把一些公共的功能代碼放在一個(gè)過程中,由此提高代碼利用率,並使其更便於維護(hù)??梢詫⒆舆^程放入標(biāo)準(zhǔn)模組、類模組和窗體模組中。定義通用過程的語法是:

[Private|Public][Static]Sub過程名(形式參數(shù)列表)

語句塊EndSub過程參數(shù)過程的參數(shù)類似於變數(shù)聲明,它聲明了從調(diào)用過程傳遞進(jìn)來的值的個(gè)數(shù)和數(shù)據(jù)類型。例如:

PrivateSubAbut(XAsString,YAsInteger,Z)

語句塊

EndSub設(shè)置參數(shù)類型是為了限定傳遞資訊,在沒有設(shè)置過程參數(shù)類型時(shí),其具有

Variant數(shù)據(jù)類型。調(diào)用過程調(diào)用過程的語法:Call過程名(實(shí)際參數(shù)列表)或:過程名

實(shí)際參數(shù)列表注意:實(shí)際參數(shù)列表,是往被定義過程的形式參數(shù)傳遞的數(shù)據(jù);因此,其數(shù)據(jù)類型需要和形式參數(shù)保持一致。實(shí)際參數(shù)可以是常量、變數(shù)、數(shù)組,或複雜運(yùn)算式,但無論是什麼都必須有確定的值。

事件過程VisualBasic中的某個(gè)控件對象的一個(gè)事件的發(fā)生時(shí),便自動(dòng)調(diào)用該控件的該事件過程。一個(gè)窗體上的控件的事件過程名,由控件的實(shí)際名字、下劃線

(_)和事件名組合而成。例如,一個(gè)名為

cmdPlay

的命令按鈕被單擊時(shí)所調(diào)用的事件過程是:

cmdPlay_Click。窗體也屬於控件,但其事件過程命名規(guī)則卻和一般控件有所不同。窗體事件名是:辭彙“Form”、下劃線和事件名的組合。例如,窗體單擊時(shí)所調(diào)用的事件過程是:

Form_Click。通用過程和事件過程的關(guān)係函數(shù)過程在VisualBasic中,通過Function語句創(chuàng)建的函數(shù)過程和通過Sub語句創(chuàng)建的子過程類似。與子過程不同的是:Function過程可返回一個(gè)值到調(diào)用的過程。函數(shù)過程的語法是:Function函數(shù)名(形式參數(shù)列表)[As類型]

語句塊EndFunction函數(shù)過程需要返回的值由As子句設(shè)置。調(diào)用函數(shù)過程調(diào)用函數(shù)時(shí)可以有兩種方式。方法一:把函數(shù)看作一個(gè)數(shù),可以放在賦值號右端。其格式是:例如:Tx1=MyFunc(5)方法二:作為參數(shù)出現(xiàn)在調(diào)用過程中或函數(shù)中。例如:

Tx2=MyFunc(MyFunc(5))

函數(shù)過程中返回值在函數(shù)過程內(nèi)的語句塊內(nèi),可以通過以下語句將值返回。函數(shù)名

=運(yùn)算式例如:FunctionHypotenuse(AAsInteger,BAsInteger)AsStringHypotenuse=Sqr(A^2+B^2)EndFunction常用內(nèi)置函數(shù)

除了建立函數(shù)過程外,VisualBasic還提供了豐富的內(nèi)置函數(shù)可用於程式設(shè)計(jì),包括:數(shù)學(xué)函數(shù)、字串函數(shù)、判斷函數(shù)、轉(zhuǎn)換函數(shù)等方面的函數(shù)。數(shù)學(xué)函數(shù)(1)數(shù)學(xué)函數(shù)主要用來完成數(shù)學(xué)運(yùn)算,常用的有

:1.Sin(x)——返回X的正弦值,X的單位為弧度。2.Cos(x)——返回X的余弦值,X的單位為弧度。

3.Tan(x)——返回X的正切值,X的單位為弧度。4.Atan(x)——返回X的反正切值,返回值單位為弧度。

5.Log(x)——返回X的自然對數(shù)。

6.Exp(x)——返回以e為底的X的指數(shù)值。

數(shù)學(xué)函數(shù)(2)7.Sqrt(x)——返回參數(shù)X的平方根值。

8.Abs(x)——返回X的絕對值。

9.Hex(x)——以字串形式返回X的十六進(jìn)制值。10.Oct(x)——以字串形式返回X的八進(jìn)制值。

11.Rnd(x)——產(chǎn)生一個(gè)介於0—1之間的單精確度亂數(shù)。

12.Int(x)——去掉小數(shù)部分,返回整數(shù)。

13.Fix(x)——去掉小數(shù)部分,返回整數(shù)。

字串函數(shù)(1)常用的字串函數(shù)有:1.InStr([起始位置],字串1,字串2[,比較類型])——字串2在字串1中第一次出現(xiàn)的位置。2.InStrRev(字串1,字串2[起始位置[,比較類型]]——與InStr()函數(shù)相似,只是從字串1的後面開始向前查找。3.LTrim(字串)——去掉字串左邊的空白部分。4.Rtrim(字串)——去掉字串右邊的空白部分。5.Trim(字串)——去掉字串的左右空格。

6.Left(字串,個(gè)數(shù))——取出字串左邊指定個(gè)數(shù)的字元。

字串函數(shù)(2)7.Right(字串,個(gè)數(shù))——取出字串右邊指定個(gè)數(shù)的字元。8.

Mid(字串,起始位置[,個(gè)數(shù)])——取字串由起始位置開始的指定個(gè)數(shù)的字元。

9.Len(字串或字元變數(shù))——計(jì)算字元長度。10.Ucase(字串)——將字串的小寫字母轉(zhuǎn)換為大寫字母。11.Lcase(字串)——將字串的大寫字母轉(zhuǎn)換為小寫字母。

12.Space(個(gè)數(shù))——返回指定個(gè)數(shù)的空字元串。13.String(個(gè)數(shù),字元)——返回包含重複字元的字串。判斷函數(shù)1.IsArray(變數(shù)名)——判斷變數(shù)是否為數(shù)組。2.IsDate(運(yùn)算式)——判斷運(yùn)算式是否為日期。3.IsEmpty(變數(shù))——判斷變數(shù)是否已被初始化。4.IsNumeric(運(yùn)算式)——判斷運(yùn)算式是否為數(shù)字型。

5.Iff(運(yùn)算式,真部分,假部分)——計(jì)算真假兩部分的值,再計(jì)算運(yùn)算式的值。若運(yùn)算式為True,返回真部分的值;否則,返回假部分的值。

轉(zhuǎn)換函數(shù)轉(zhuǎn)換函數(shù)用來實(shí)現(xiàn)不同類型數(shù)據(jù)之間的轉(zhuǎn)換。

1.Str(數(shù)值運(yùn)算式)——把數(shù)值轉(zhuǎn)換為字串。2.Val(字串)——把字串轉(zhuǎn)換為數(shù)字?jǐn)?shù)值,忽略字串中的非數(shù)字字元。

編程方法

VisualBasic具有結(jié)構(gòu)化和面向?qū)ο髢煞N編程特徵。結(jié)構(gòu)化編程

結(jié)構(gòu)化編程是程式設(shè)計(jì)走向成熟的一個(gè)標(biāo)誌。非結(jié)構(gòu)化的高級語言程式是把問題作為一個(gè)單一過程來處理的。但是,隨著問題越來越複雜,程式規(guī)模逐步加大,以至求解問題的單一過程程式複雜度超出人所能夠駕束的範(fàn)圍。結(jié)構(gòu)化的基本思路是將問題進(jìn)行有效分解,使大問題轉(zhuǎn)化為小問題,而使問題簡化、便於解決。模組是結(jié)構(gòu)化設(shè)計(jì)中的一個(gè)基本概念。所謂模組既是具有一定的功能特性程式段落。而模組又表現(xiàn)出多層次特性。在VisualBasic中,標(biāo)準(zhǔn)程式檔、窗體檔是上層模組,而其內(nèi)的過程、函數(shù)則是具有更細(xì)節(jié)功能特性的下層模組。因此,以完成某項(xiàng)功能為目標(biāo)創(chuàng)建程式檔、窗體檔,並在其內(nèi)建立過程、函數(shù),也就成為了在VisualBasic環(huán)境下,按照結(jié)構(gòu)化進(jìn)行程式設(shè)計(jì)的基本方法。對象編程

面向?qū)ο蟪淌皆O(shè)計(jì)是在二十世紀(jì)八十年代逐步湧現(xiàn)出來的新的設(shè)計(jì)思路。VisualBasic具有面向?qū)ο蟮牟糠痔攸c(diǎn),它所缺少的是類的繼承特性。人對事物的認(rèn)識是通過抽象實(shí)現(xiàn)的;在面向?qū)ο笾校@個(gè)抽象被表現(xiàn)為“類”。而對象則是“類的實(shí)例”,是對類的具體化的結(jié)果。由類的具體化可以得到對象,既意味著:對象可以通過類來定義。在VisualBasic中,控件是最常用的對象。通過把“工具箱”上圖示所代表的控件類拖入用戶設(shè)計(jì)窗體,也就獲得了一個(gè)控件對象。實(shí)質(zhì)上,對象既是代碼和數(shù)據(jù)的組合,它可以是應(yīng)用程式的一部分,也可以是整個(gè)應(yīng)用程式。窗體,窗體上的命令按鈕、列表框,資料庫,資料庫中的表、字段、記錄集,圖表;它們都是對象。第5章可視化設(shè)計(jì)基本構(gòu)件窗體窗體是

VisualBasic應(yīng)用程式的基本構(gòu)造模組,是運(yùn)行應(yīng)用程式時(shí),用戶進(jìn)行交互操作的窗口或?qū)υ捒颉F涔逃谐煞质牵簣D示、標(biāo)題欄、控制菜單、控制按鈕和工作區(qū)(容器)。

窗體屬性(1)

窗體的個(gè)性是通過其屬性體現(xiàn)的,其可以在設(shè)計(jì)時(shí)通過“屬性”窗口設(shè)置,也可以在運(yùn)行時(shí)由代碼來實(shí)現(xiàn)。窗體的常用屬性是:

1.Name——窗體的名稱。

2.Appearance——3D效果。

3.BorderStyle——設(shè)置窗體邊框樣式。

4.Caption——窗體標(biāo)題。

5.ControlBox——設(shè)置窗體“控制菜單”。

6.Enabled——對用戶事件是否能作出反應(yīng)。窗體屬性(2)

7.Height(高)、Width(寬)——窗體大小。

8.Left(左)、Top(頂)——窗體位置。

9.HelpContextID——幫助檔的上下文關(guān)聯(lián)編號。

10.Icon——設(shè)置窗體圖示。

11.MDIChild——設(shè)置窗體是否被作為MDI子窗體。

12.Moveable——設(shè)置是否能移動(dòng)一個(gè)窗體。

13.StartupPosition——設(shè)置窗體啟動(dòng)位置。

14.Visible——設(shè)置窗體是被顯示還是被隱藏。窗體事件

事件的作用在於能夠?qū)τ脩舻男袨樽鞒龌貞?yīng)。窗體的常用事件有:

1.Load事件——發(fā)生在窗體被裝載時(shí)。

2.Activate事件——當(dāng)一個(gè)窗體變成活動(dòng)窗體時(shí)。

3.Deactivate事件——當(dāng)改變當(dāng)前窗體時(shí)。

4.Unload事件——當(dāng)卸載窗體時(shí)。

5.Resize事件——當(dāng)調(diào)整窗體的大小時(shí)。窗體的方法

窗體的方法也就是窗體所具有的行動(dòng)方式。窗體上常用的方法有:

1.Show方法——用以顯示窗體。

2.Hide方法——用於隱藏窗體,但不能使其卸載。

3.Move方法——用以移動(dòng)窗體到一定的座標(biāo)位置。

4.Refresh方法——強(qiáng)制全部重繪窗體及上面的控件。

控件控件是建立VisualBasic應(yīng)用程式的基本元素。應(yīng)該講,可視化設(shè)計(jì)就是通過控件實(shí)現(xiàn)的。能夠用於VisualBasic的控件數(shù)量眾多,一般將其分為兩個(gè)方面:內(nèi)部固有控件、ActiveX控件。用戶可以通過“工具箱”獲取各種控件。內(nèi)部控件

內(nèi)部控件是包含在VisualBasic系統(tǒng)內(nèi),可以直接使用的控件;因此具有相對較好的運(yùn)行性能。常用的內(nèi)部控件有:命令按鈕、文本框、標(biāo)籤、框架、列表框、組合框、複選框、選項(xiàng)按鈕、圖片框、定時(shí)器、數(shù)據(jù)控件

等。CommandButton(命令按鈕)

當(dāng)用戶需要互動(dòng)式地控制應(yīng)用程式的時(shí)候,最簡便的方法就是給用戶提供一個(gè)“命令按鈕”。命令按鈕的作用是:在用戶單擊它時(shí),將會激發(fā)它的Click事件。因此,將代碼寫入命令按鈕的Click事件過程,通過用戶單擊就可以執(zhí)行相關(guān)操作。命令按鈕的常用屬性有:Cancel屬性用於設(shè)置按鈕為取消按鈕。Caption屬性用於設(shè)置在命令按鈕上顯示的文本。

Style屬性

設(shè)置命令按鈕的外觀。TextBox

(文本框)

TextBox(文本框)控件一般是用來接收或顯示輸入輸出資訊,可用於編輯文本。經(jīng)常使用的文本框?qū)傩杂校篢ext屬性用於設(shè)置顯示的文本內(nèi)容。MaxLength屬性用於設(shè)置文本框中輸入字串的長度限制。MultiLine屬性用於設(shè)置文本框是否以多行方式顯示文本。PasswordChar屬性用於設(shè)置是否顯示用戶鍵入的字元。ScrollBars屬性用於設(shè)置文本框是否有垂直或水準(zhǔn)滾動(dòng)條。Label(標(biāo)籤)

Label(標(biāo)籤)控件是專門用來顯示文本的,因此用戶不能對標(biāo)籤內(nèi)的文本進(jìn)行編輯。一般被用作標(biāo)題名。通常用標(biāo)籤來標(biāo)注本身不具有Caption屬性的控件。例如,可用Label控件為文本框、列表框、組合框等控件添加描述性的標(biāo)籤。標(biāo)籤常用的屬性有:

Caption屬性缺省屬性,設(shè)置標(biāo)籤中顯示的文本內(nèi)容。

AutoSize屬性設(shè)置控件是否能自動(dòng)調(diào)整以顯示所有的內(nèi)容。

WordWrap屬性該屬性設(shè)置控件是否擴(kuò)大以顯示標(biāo)題文字。

Frame(框架)

Frame(框架)控件是一個(gè)容器??蚣艿淖饔檬悄軌虬哑渌目丶M織在一起形成控件組。這樣,當(dāng)框架移動(dòng)、隱藏時(shí),其內(nèi)的控件組也相應(yīng)移動(dòng)、隱藏??蚣艿某S脤傩杂校?/p>

Caption屬性設(shè)置框架標(biāo)題,使用戶瞭解框架的用途。

Enabled屬性設(shè)置框架是否有效。

Visible屬性設(shè)置框架是否可見。ListBox(列表框)(1)

ListBox(列表框)控件用於顯示專案列表。用戶可以從列表框中的一系列選項(xiàng)中選擇一個(gè)或多個(gè)選項(xiàng)。

List屬性設(shè)置列表框中包含的項(xiàng)。

Columns屬性設(shè)置是水準(zhǔn)滾動(dòng)還是垂直滾動(dòng)。

MultiSelect屬性設(shè)置是否能夠做多個(gè)選擇。

ListIndex屬性當(dāng)前所選擇元素的下標(biāo)。

ListCount屬性列表中全部元素的個(gè)數(shù)。

Sorted屬性設(shè)置按字母順序排列專案。ListBox(列表框)(2)

列表框經(jīng)常用到的操作有:添加專案:列表框.AddItemitem[,index]例如:List1.AddItem“王平”2.刪除專案:列表框.RemoveItemindex例如:List1.RemoveItem03.獲得列表專案內(nèi)容:列表框.List(index)例如:Text1.Text=List1.List(2)4.用ListIndex

屬性判斷專案位置。5.用ListCount

屬性返回專案數(shù)。ComboBox(組合框)

ComboBox(組合框)控件將文本框和列表框的功能結(jié)合在一起。有了這個(gè)控件,用戶可通過在組合框中輸入文本來選定專案,也可從列表中選定專案。在使用方式上,組合框具有和列表框相似的特徵。組合框的特點(diǎn)是可由Style屬性設(shè)置三種組合樣式。CheckBox(複選框)

CheckBox(複選框)控件通常用於提供Yes/No或True/False的邏輯選擇。複選框通過Value屬性指示其所處的狀態(tài)。無論何時(shí),當(dāng)用戶單擊複選框時(shí)都將觸發(fā)其Click事件。OptionButton(選項(xiàng)按鈕)選項(xiàng)按鈕被用來做從多個(gè)可選項(xiàng)中選擇一項(xiàng)的操作。選項(xiàng)按鈕和複選框控件看起來相似。因此,可以把複選框中的操作方法用到選項(xiàng)按鈕上來。它們之間的區(qū)別是:選項(xiàng)按鈕一般用於單項(xiàng)選擇,而複選框則可以用於多項(xiàng)選擇。PictureBox(圖片框)圖片框是用來顯示圖形的,但同時(shí)它又可以作為其他控件的容器。在做容器使用時(shí),圖片框和Frame控件類似。圖片框經(jīng)常用到的屬性是:Picture屬性用於設(shè)置要加載的圖片。AutoSize屬性設(shè)置圖片框是否按圖片大小自動(dòng)調(diào)整。

Timer(定時(shí)器)定時(shí)器是一個(gè)回應(yīng)時(shí)間的控件。它們獨(dú)立於用戶,編程後可用來在一定的時(shí)間間隔中週期性地執(zhí)行某項(xiàng)操作。定時(shí)器有兩個(gè)關(guān)鍵屬性:Enabled屬性當(dāng)該屬性為True時(shí),定時(shí)器處於工作狀態(tài)。而當(dāng)Enabled被設(shè)置為False時(shí),它就會暫停操作而處於待命狀態(tài)。因此,定時(shí)器的Enabled屬性並不同於其他對象的Enabled屬性。Interval屬性定時(shí)器週期性事件之間的時(shí)間間隔(毫秒數(shù))。Data(數(shù)據(jù))控件Data控件用於在程式中進(jìn)行資料庫連接,並可以把資料庫中的資訊通過窗體上的數(shù)據(jù)識別控件顯示、編輯和更新。Data控件是依靠屬性來獲取對數(shù)據(jù)的連接的,在進(jìn)行連接時(shí)其關(guān)鍵屬性有:Connect屬性設(shè)置有待連接的資料庫類型。DatabaseName屬性設(shè)置連接的資料庫檔或目錄名稱。RecordSource屬性設(shè)置需要訪問的資料庫表的名稱。ActiveX控件

ActiveX控件是外部控件,因此其存在形式不同於和VisualBasic融合在一起的內(nèi)部控件。它們是以擴(kuò)展名為.ocx

的檔形式存在於VisualBasic系統(tǒng)之外,只在需要時(shí)才將其添加到工具箱中。

ActiveX控件是對VisualBasic內(nèi)部控件集合的擴(kuò)充。例如:ADOData控件,它是Data控件的功能擴(kuò)充,可使VisualBasic具有更強(qiáng)的數(shù)據(jù)訪問能力。應(yīng)該講,VisualBasic的諸多強(qiáng)大功能正是依靠ActiveX控件獲得的。經(jīng)常使用的ActiveX控件有:ADOData、數(shù)據(jù)組合、數(shù)據(jù)列表、DataGrid

、公共對話框、RichTextBox

等。ADOData

在使用ADOData控件之前需要在“部件”對話框中,選擇“MicrosoftADODataControl”選項(xiàng),將其引入到工具箱。如同Data控件,ADOData控件也是通過屬性實(shí)現(xiàn)了對數(shù)據(jù)源的連接。其用於連接的關(guān)鍵屬性是:

ConnectionString屬性設(shè)置數(shù)據(jù)源連接方式。

RecordSource屬性設(shè)置記錄源類型、組成。DataCombo

、DataList控件

為了使用DataCombo

和DataList控件,需要在“部件”對話框中,選擇“MicrosoftDataListControls”選項(xiàng)。

DataCombo

和DataList

控件與標(biāo)準(zhǔn)列表框、組合框控件極為相似,其不同在於DataCombo

、

DataList

控件具有更強(qiáng)的數(shù)據(jù)綁定能力。

DataCombo

、DataList

控件能實(shí)現(xiàn)兩方面的數(shù)據(jù)綁定。其一方面,可以通過DataSource、DataField屬性綁定到其將產(chǎn)生影響的目標(biāo)數(shù)據(jù)的某個(gè)字段;另一方面,還可以通過RowSource、ListField屬性綁定到其列表所需數(shù)據(jù)的某個(gè)字段。DataGrid

要用DataGrid控件,需要在“部件”對話框中,選擇“MicrosoftDataGridControl”到工具箱。

DataGrid控件是一種類似於電子數(shù)據(jù)表的綁定控件,可以顯示一系列行和列來表示記錄集合的記錄和字段。

DataGrid控件數(shù)據(jù)訪問功能極強(qiáng),但使用卻非常簡單。在設(shè)計(jì)時(shí)只需要設(shè)置了它的DataSource

屬性,則其就會用數(shù)據(jù)源的記錄集來自動(dòng)填充該表格,和自動(dòng)設(shè)置該控件的列標(biāo)頭。CommonDialog(公共對話框)

要使用公共對話框,需要在“部件”對話框中,選擇“MicrosoftCommonDialogControl”到工具箱。公共對話框控件提供一組標(biāo)準(zhǔn)的操作對話框,進(jìn)行諸如打開和保存檔,設(shè)置列印選項(xiàng),以及選擇顏色和字體等操作。方法顯示的對話ShowOpen打開ShowSave另存為ShowColor顏色ShowFont字體ShowPrinter列印ShowHelp調(diào)用Windows“幫助”RichTextBox

要使用RichTextBox控件,需要在“部件”對話框中,選擇“MicrosoftRichTextBoxControl”到工具箱中。

RichTextBox控件和標(biāo)準(zhǔn)文本框類似,標(biāo)準(zhǔn)TextBox

控件用到的所有屬性、事件和方法,RichTextBox控件幾乎都能支持,例如MaxLength、

MultiLine、

ScrollBars、

SelLength、

SelStart

和SelText。

RichTextBox控件能以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論