過程的使用課件_第1頁
過程的使用課件_第2頁
過程的使用課件_第3頁
過程的使用課件_第4頁
過程的使用課件_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第6章過程的使用6.1VisualBasic的工程6.2過程 6.3過程的調(diào)用6.4參數(shù)的傳遞6.5遞歸過程6.6變量的作用范圍6.7過程的作用范圍6.8Shell函數(shù)6.9程序舉例1第6章過程的使用6.1VisualBasic的工程6.1VisualBasic的工程6.1.1VisualBasic的文件類型 1466.1.2工程的組成 1476.1.3管理工程 14826.1VisualBasic的工程6.1.1Visu6.1.1VB的文件類型1.工程文件(.vbp)工程文件(.vbp)包含了組成應(yīng)用程序的所有窗體文件(.frm)、標(biāo)準(zhǔn)模塊文件(.bas)、類模塊文件(.cls)及其他文件,也包含了環(huán)境設(shè)置方面的信息。2.窗體文件(.frm)窗體文件包含本模塊中窗體、控件的描述和屬性設(shè)置,也包含窗體級的常量、變量、外部過程的聲明,以及事件過程和通用過程的程序代碼。(快講)36.1.1VB的文件類型1.工程文件(.vbp)(快講6.1.1VB的文件類型3.窗體的二進(jìn)制數(shù)據(jù)文件(.frx)窗體的二進(jìn)制數(shù)據(jù)文件含有窗體上控件的二進(jìn)制屬性數(shù)據(jù),以二進(jìn)制數(shù)為其值。4.標(biāo)準(zhǔn)模塊文件(.bas)標(biāo)準(zhǔn)模塊文件用于存放在幾個模塊中都要使用的公共代碼,包含常量、變量、類型和過程的聲明,以及通用過程代碼。5.類模塊文件(.cls)類模塊用于建立新對象,這些新對象可以包含自定義的屬性和方法,類模塊既包含代碼又包含數(shù)據(jù),可以被應(yīng)用程序內(nèi)的過程調(diào)用。46.1.1VB的文件類型3.窗體的二進(jìn)制數(shù)據(jù)文件(.fr6.1.2工程的組成VB應(yīng)用程序(.vbp文件)標(biāo)準(zhǔn)模塊(.bas文件)至少一個窗體模塊(.frm文件)Sub過程類模塊(.cls文件)函數(shù)過程Function()事件過程Sub過程函數(shù)過程Function()圖VB應(yīng)用程序的組成56.1.2工程的組成VB應(yīng)用程序(.vbp文件)標(biāo)準(zhǔn)模6.1.2工程的組成1.窗體模塊(.frm)窗體模塊包含事件過程和通用過程,通用過程又分為Sub過程和Function過程。2.標(biāo)準(zhǔn)模塊(.bas)標(biāo)準(zhǔn)模塊沒有界面只有程序代碼,包含通用過程的Sub過程和Function過程。3.類模塊(.cls)類模塊用于建立新對象,這些新對象可以包含自定義的屬性和方法,類模塊既包含代碼又包含數(shù)據(jù),它可以被應(yīng)用程序內(nèi)的過程調(diào)用。66.1.2工程的組成1.窗體模塊(.frm)窗6.1.3管理工程1.保存工程(1)保存工程(2)生成exe文件工程資源管理器76.1.3管理工程1.保存工程(1)保存工程(2)生6.1.3管理工程2.設(shè)置工程屬性選擇“工程”菜單“工程屬性”菜單項則出現(xiàn)“工程屬性”對話框,設(shè)置工程屬性選項。啟動對象工程類型工程名稱幫助文件名工程幫助上下文ID工程描述工程屬性設(shè)置86.1.3管理工程2.設(shè)置工程屬性6.1.3管理工程3.添加工程在已建的工程環(huán)境中通過添加新的或現(xiàn)有的工程構(gòu)成工程組。當(dāng)裝入了多個工程時,工程資源管理器窗口的標(biāo)題就變成“工程組”。添加新工程:添加現(xiàn)有工程:4.刪除工程在工程資源管理器窗口中選擇需刪除的工程名,選擇“文件”菜單“刪除工程”菜單項,則從工程組中刪除該工程。5.向工程中添加和刪除文件可以向工程中添加窗體、模塊、屬性頁和用戶控件等文件,選擇“工程”菜單的下拉菜單的各種添加命令向工程中添加文件。96.1.3管理工程3.添加工程在已建6.2過程一個過程就是一段程序,一個模塊由多個過程組成,一個應(yīng)用程序通過過程間的相互調(diào)用構(gòu)成。6.2.1Sub過程6.2.2Function過程106.2過程一個過程就是一段程序,一個模塊由多6.2.1Sub過程Vb中的sub過程有兩種:事件過程和通用過程。1.事件過程事件是能夠被對象(窗體和控件)識別的動作。事件過程由vb自行聲明,為一個事件所編寫的程序代碼事件過程。事件過程分為窗體事件過程和控件事件過程。116.2.1Sub過程Vb中的sub過程有6.2.1Sub過程語法: PrivateSubForm_事件名([參數(shù)列表]) [局部變量和常數(shù)聲明] 語句塊 EndSub說明:不管窗體是什么名字,但在事件過程中都使用“Form_事件名”。窗體過程前面的聲明都是Private,表示這個窗體過程只能在窗體模塊中使用。在Sub和EndSub之間的語句塊,稱為程序體或過程體。1.事件過程(1)窗體事件過程126.2.1Sub過程語法:1.事件過程(1)窗體事件6.2.1Sub過程語法: PrivateSub控件名_事件名([參數(shù)列表]) [局部變量和常數(shù)聲明] 語句塊 EndSub(2)控件事件過程控件的事件過程名定義為“控件名_事件名”。136.2.1Sub過程語法:(2)控件事件過程控件的事6.2.1Sub過程(1)定義 [Private|Public][Static]Sub過程名([參數(shù)列表]) [局部變量和常數(shù)聲明] 語句塊 [ExitSub] 語句塊 EndSub2.通用過程Sub過程不能嵌套定義,但是可以嵌套調(diào)用。146.2.1Sub過程(1)定義2.通用過程6.2.1Sub過程參數(shù)列表:類似于變量聲明,列出了從調(diào)用過程傳遞來的參數(shù)值,稱為形式參數(shù)(簡稱形參),多個形參之間則用逗號隔開,形參的定義如下:

[ByVal|ByRef]變量名[()][As數(shù)據(jù)類型]部分描述ByVal表示該參數(shù)按值傳遞。ByRef表示該參數(shù)按地址傳遞(默認(rèn))。變量名[()]代表參數(shù)的變量名稱。數(shù)據(jù)類型用于說明傳遞給該過程的參數(shù)數(shù)據(jù)類型,默認(rèn)為Variant??梢允荁yte、Boolean、Integer、Long、Currency、String、Single、Double、Date或Object。形式參數(shù)表156.2.1Sub過程參數(shù)列表:類似于變量聲明,列出了6.2.1Sub過程(2)建立通用過程創(chuàng)建通用過程的方法有兩種:一是利用“工具->添加過程”對話框,二是在代碼窗口中直接輸入。添加過程對話框166.2.1Sub過程(2)建立通用過程添加過6.2.1Sub過程例如:PublicSubsub1()

Form2.ShowForm1.HideEndSub176.2.1Sub過程例如:176.2.2Function過程Function過程與Sub過程的區(qū)別:Function過程可以返回一個值到調(diào)用的過程。1.函數(shù)定義語法:[Private|Public][Static]Function函數(shù)名([參數(shù)列表])[As數(shù)據(jù)類型]

[局部變量和常數(shù)聲明] [函數(shù)名=表達(dá)式] [ExitFunction] 語句塊 [函數(shù)名=表達(dá)式]EndFunction186.2.2Function過程Function過6.2.2Function過程2.建立函數(shù)過程建立函數(shù)過程的方法與建立通用過程的方法相同,選擇“工具”菜單的“添加過程”菜單項,然后在“添加過程”對話框中輸入過程名,在“類型”選項中“函數(shù)”類型。添加過程對話框196.2.2Function過程2.建立函數(shù)過程添加6.2.2Function過程【例】計算圓面積的Function過程cir:Functioncir(rAsSingle)AsSingleConstpiAsSingle=3.1415926cir=pi*r^2EndFunction206.2.2Function過程【例】計算圓面積的Func6.3過程的調(diào)用6.3.1調(diào)用Sub過程 6.3.2調(diào)用Function過程 216.3過程的調(diào)用6.3.1調(diào)用Sub過程 216.3.1調(diào)用Sub過程調(diào)用Sub過程的兩種方法:1.使用Call語句調(diào)用過程Call語句的格式為:Call過程名[(實在參數(shù)表列)]2.將過程名作為語句使用(直接使用過程名)如果省略Call關(guān)鍵字而直接將過程名作為語句使用,也必須省略[實在參數(shù)表列]外面的括號,參數(shù)和過程名用空格隔開。過程名[實在參數(shù)表列]226.3.1調(diào)用Sub過程調(diào)用Sub過程的兩種方6.3.1調(diào)用Sub過程1.調(diào)用Sub事件過程Sub事件過程可以由事件自動調(diào)用或者在同一模塊中的其它過程中使用調(diào)用語句來調(diào)用。PrivateSubForm_Click()

CallCommand1_ClickEndSub或者:PrivateSubForm_Click()

Command1_ClickEndSub例6-1Sub調(diào)用Command1_Click過程EndSubSubEndSub調(diào)用返回Form_Click過程調(diào)用事件過程Command1_Click過程236.3.1調(diào)用Sub過程1.調(diào)用Sub事件過程Su6.3.1調(diào)用Sub過程2.調(diào)用Sub通用過程調(diào)用Sub通用過程的語法與調(diào)用Sub事件過程相同。不同的是,通用過程只有在被調(diào)用時才起作用,否則不會被執(zhí)行。PublicSubsub1()

Form2.ShowForm1.HideEndSubPrivateSubForm_Click()

CallSub1EndSub246.3.1調(diào)用Sub過程2.調(diào)用Sub通用過程246.3.2調(diào)用Function過程調(diào)用函數(shù)Function過程的方法和調(diào)用VB內(nèi)部函數(shù)方法一樣,在語句中直接使用函數(shù)名,F(xiàn)unction過程可返回一個值到調(diào)用的過程?!纠?-1】運行界面【例6-2】運行界面256.3.2調(diào)用Function過程調(diào)用函6.4參數(shù)的傳遞在調(diào)用一個有參數(shù)的過程時,首先進(jìn)行的是形參和實參的結(jié)合,實現(xiàn)調(diào)用過程的實參與被調(diào)用過程的形參之間的數(shù)據(jù)傳遞。6.4.1形參和實參6.4.2參數(shù)按值傳遞和按地址傳遞 6.4.3數(shù)組參數(shù) 6.4.4對象參數(shù) 266.4參數(shù)的傳遞在調(diào)用一個有參數(shù)的過程時,6.4.1形參和實參1.形參和實參在Sub過程和Function過程中,被調(diào)過程中的參數(shù)是形參。形參列表中的各參數(shù)之間用逗號(,)分隔,形參可以是變量名或數(shù)組名,但不能是定長字符串變量。實參是在主調(diào)過程中的參數(shù),在調(diào)用過程時實參將數(shù)據(jù)傳遞給形參。

形參列表和實參列表中的對應(yīng)變量名可以不同,但實參和形參的個數(shù)、順序以及數(shù)據(jù)類型必須相同。否則出錯。參數(shù)出錯276.4.1形參和實參1.形參和實參6.4.1形參和實參PublicFunctionFunction1(ByValaAsSingle,ByValbAsSingle)AsSingle'計算直角斜邊函數(shù)DimcAsSinglec=Sqr(a^2+b^2)Function1=cEndFunctionPrivateSubCommand1_Click()'計算斜邊Dima1AsSingle,b1AsSinglea1=Val(Text1.Text)b1=Val(Text2.Text)Text3.Text=Function1(a1,b1)EndSub形式參數(shù)實際參數(shù)286.4.1形參和實參PublicFunctionF6.4.1形參和實參2.形參的數(shù)據(jù)類型(1)實參數(shù)據(jù)類型與形參定義的數(shù)據(jù)類型不一致對于實參數(shù)據(jù)類型與形參定義的數(shù)據(jù)類型不一致時,VB會按要求對實參進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換,然后將轉(zhuǎn)換值傳遞給形參。(2)沒有聲明形參的數(shù)據(jù)類型運行界面在創(chuàng)建過程時,如果沒有聲明形參的數(shù)據(jù)類型,則默認(rèn)為Variant型。296.4.1形參和實參2.形參的數(shù)據(jù)類型(1)實參數(shù)據(jù)類6.4.1形參和實參3.使用可選的參數(shù)VB中被調(diào)函數(shù)參數(shù)列表中的參數(shù)也可以是可選的,使用Optional關(guān)鍵字來表示參數(shù)可選。PrivateFunctionDivisor(OptionalByValxAsVariant,OptionalByValyAsVariant)AsInteger'求最大公約數(shù)子函數(shù)DimrAsIntegerIfIsMissing(x)Thenx=1IfIsMissing(y)Theny=1r=xModyDoWhiler<>0x=yy=rr=xModyLoopDivisor=yEndFunction306.4.1形參和實參3.使用可選的參數(shù)6.4.1形參和實參在未提供可選參數(shù)時,實際上是將該參數(shù)作為具有相應(yīng)數(shù)據(jù)類型的初始值來賦值,不會出現(xiàn)編譯錯誤的提示。如果傳遞的參數(shù)是Variant型,可以在過程體中通過IsMissing函數(shù)來測試調(diào)用時是否傳遞可選參數(shù)。316.4.1形參和實參在未提供可選參數(shù)時,實6.4.1形參和實參4.使用可變參數(shù)在傳遞參數(shù)時,如果要求參數(shù)的數(shù)目可以變化,使之可以接收任意多個參數(shù),則在函數(shù)過程或Sub過程中一般采用如下語法:Sub<過程名>([<其他參數(shù)>,]ParamArray<數(shù)組名>)

注意:ParamArray后面跟Variant型的數(shù)組,ParamArray關(guān)鍵字不能與ByVal、ByRef或Optional一起使用。326.4.1形參和實參4.使用可變參數(shù)326.4.1形參和實參例如:PrivateFunctiondivisor(ParamArrayn())'通用函數(shù)求最大公約DimrAsIntegerIfUBound(n)=1Thenx=n(0):y=n(1)ElseIfUBound(n)=0Thenx=n(0):y=1EndIfr=xModyDoWhiler<>0x=yy=rr=xModyLoopdivisor=yEndFunction336.4.1形參和實參例如:336.4.2參數(shù)按值傳遞和按地址傳遞1.按值傳遞參數(shù)定義被調(diào)過程時形參使用ByVal關(guān)鍵字,或調(diào)用語句中的實參是常量或表達(dá)式,就是按值傳遞。ByVal傳值實參臨時單元形參

傳值就是通過傳送實參的值而不是傳送地址的方法給被調(diào)用過程中的形參。系統(tǒng)把需要傳送的實參復(fù)制到一個臨時單元中,然后再把該臨時的地址傳送給形參。這樣,被調(diào)用的過程并沒有訪問實參的地址,因而也就不會改變實參的值。346.4.2參數(shù)按值傳遞和按地址傳遞1.按值傳遞參6.4.2參數(shù)按值傳遞和按地址傳遞例如,下面都是按值傳遞:使用ByVal關(guān)鍵字定義被調(diào)過程形參PrivateFunctionDivisor(ByValxAsInteger,ByValyAsInteger)AsInteger用常量作為實參Result=Divisor(20,50)將變量變成表達(dá)式作為實參把變量轉(zhuǎn)換成表達(dá)式的最簡單的方法就是把它放在括號內(nèi),則調(diào)用過程的語句為:Result=Divisor((m),(n))被調(diào)過程的定義語句:PrivateFunctionDivisor(xAsInteger,yAsInteger)AsInteger 356.4.2參數(shù)按值傳遞和按地址傳遞例如,下面都是按值6.4.2參數(shù)按值傳遞和按地址傳遞2.按地址傳遞參數(shù)在定義過程時,如果沒有ByVal關(guān)鍵字,默認(rèn)的是按地址傳遞參數(shù),或者用ByRef關(guān)鍵字指定按地址傳遞。ByRef傳址實參形參按地址傳遞參數(shù)時,實參和形參共用一段存儲單元,修改了形參的值就修改了實參的值。366.4.2參數(shù)按值傳遞和按地址傳遞2.按地址傳遞6.4.2參數(shù)按值傳遞和按地址傳遞【例6-3】(a)運行結(jié)果ab2x1y2z(b)按地址傳遞376.4.2參數(shù)按值傳遞和按地址傳遞【例6-3】(a)6.4.2參數(shù)按值傳遞和按地址傳遞按地址傳遞參數(shù)有幾點說明:(1)對于按地址傳遞的形參,如果在過程調(diào)用時與之結(jié)合的實參是常數(shù)或表達(dá)式,則VB會給形參分配一個臨時的內(nèi)存單元,用按值傳遞的方法處理。(2)當(dāng)形參和實參數(shù)據(jù)類型不同時,按地址傳遞會提示出錯。(3)按地址傳遞參數(shù)比按值傳遞參數(shù)更節(jié)省內(nèi)存空間,程序運行效率更高。編譯出錯386.4.2參數(shù)按值傳遞和按地址傳遞按地址傳6.4.3數(shù)組參數(shù)【例6-5】程序代碼如下:OptionBase1PrivateSubCommand1_Click()'單擊計算按鈕DimScore1(8)AsSingle,Score2(8)AsSingleDimiAsInteger,jAsInteger'輸入分?jǐn)?shù)Score1(1)=98:Score2(1)=84Score1(2)=82:Score2(2)=86Score1(3)=76:Score2(3)=79Score1(4)=66:Score2(4)=72Score1(5)=88:Score2(5)=84Score1(6)=82:Score2(6)=76Score1(7)=75:Score2(7)=79Score1(8)=60:Score2(8)=70Text1.Text=Int(Average(Score1)*100)/100Text2.Text=Int(Average(Score2)*100)/100EndSub數(shù)組作為參數(shù)向過程傳遞,數(shù)組傳遞只能是按地址傳遞。396.4.3數(shù)組參數(shù)【例6-5】程序代碼如下:數(shù)組作為參6.4.3數(shù)組參數(shù)子函數(shù)Average計算平均成績,形參s為數(shù)組。PrivateFunctionAverage(s()AsSingle)AsSingle'求平均成績子函數(shù)DimiAsIntegerDimAverAsSingle,SumAsSingleFori=1To8Sum=Sum+s(i)NextAver=Sum/8Average=AverEndFunction406.4.3數(shù)組參數(shù)子函數(shù)Average計算平均成績,形6.4.4對象參數(shù)在VB中對象也可以作為形參,即對象可以作為參數(shù)向過程傳遞,對象的傳遞只能是按地址傳遞。對象作為形參變量的類型聲明為Control或控件類型?!纠?-7】(a)窗體FormCover的運行界面(b)窗體Form1的運行界面(自學(xué))416.4.4對象參數(shù)在VB中對象也可以作為6.5遞歸過程過程具有遞歸調(diào)用的功能,遞歸調(diào)用是指在過程中直接或間接地調(diào)用過程本身。遞歸調(diào)用在完成階乘運算、級數(shù)運算、冪指數(shù)運算等方面特別有效,很多數(shù)學(xué)模型和算法設(shè)計本身就是遞歸的。遞歸分為兩種類型,一種是直接遞歸,即在過程中調(diào)用過程本身;一種是間接遞歸,即間接地調(diào)用一個過程。注意:遞歸結(jié)構(gòu)構(gòu)成了另外一種形如循環(huán)的結(jié)構(gòu)。426.5遞歸過程過程具有遞歸調(diào)用的功能,遞6.5遞歸過程f過程調(diào)用f過程過程f1調(diào)用f2過程過程f2調(diào)用f1過程顯然:上述例子會無限遞歸(無限執(zhí)行)。所以,在遞歸調(diào)用時都有條件限制。即:條件成立,調(diào)用遞歸,否則結(jié)束。436.5遞歸過程f過程調(diào)用f過程過程f1調(diào)用f2過程過6.5遞歸過程過程的嵌套調(diào)用:r主程序srrrs子過程1rst子過程2rst子過程3446.5遞歸過程過程的嵌套調(diào)用:r主程序srrrs子過6.5遞歸過程【例6-8】計算階乘n!可以表示為:運行界面456.5遞歸過程【例6-8】計算階乘n!可以表示為:6.5遞歸過程5!的運算過程:?5!5×4!4×3!3×2!2×1!12×13×24×65×24120逐層調(diào)用逐層返回到達(dá)終止條件,逐層調(diào)用結(jié)束466.5遞歸過程5!的運算過程:?5!5×4!4×6.6變量的作用范圍6.6.1過程級、模塊級和全局變量6.6.2靜態(tài)變量6.6.3使用同名的變量476.6變量的作用范圍6.6.1過程級、模塊級和全局變6.6.1過程級、模塊級和全局變量1.過程級變量過程級變量是在過程中聲明的也稱為局部變量,其作用范圍僅限于本過程,無法在其他過程中訪問或改變該變量的值。用dim或static來聲明。2.模塊級變量模塊級變量是在窗體模塊或標(biāo)準(zhǔn)模塊頂部“通用”聲明段定義的變量,模塊級變量對該模塊的所有過程都有效,在模塊中的任何過程都可以訪問該變量,但其它模塊的過程則不能訪問該變量。用dim或private來聲明。486.6.1過程級、模塊級和全局變量1.過程級變量6.6.1過程級、模塊級和全局變量【例6-10】使用文本框顯示變量的范圍。運行界面496.6.1過程級、模塊級和全局變量【例6-10】使用文本6.6.1過程級、模塊級和全局變量3.全局變量全局變量的作用范圍可以是應(yīng)用程序的所有過程,也稱為公用變量。全局變量可以在模塊頂部的“通用”聲明段用Public關(guān)鍵字聲明。語法:Public變量名As數(shù)據(jù)類型在代碼窗口分別聲明a為全局變量,b為模塊級變量,c為過程級變量,其變量的的聲明語句如圖所示。聲明變量506.6.1過程級、模塊級和全局變量3.全局變量6.6.1過程級、模塊級和全局變量【例6-11】(a)Form1運行界面(b)Form2運行界面注意:常數(shù)、固定長度字符串、數(shù)組、自定義類型與Declare語句不能是窗體對象模塊中的Public成員。516.6.1過程級、模塊級和全局變量【例6-11】(a6.6.2靜態(tài)變量局部變量可以分為動態(tài)變量和靜態(tài)變量。動態(tài)變量:在本過程執(zhí)行期間分配內(nèi)存的變量,當(dāng)一個過程執(zhí)行完畢,變量所占的內(nèi)存被釋放,變量的值就不存在了。用Dim來聲明靜態(tài)變量:在過程結(jié)束后仍保留值的變量,即其占用的內(nèi)存單元未釋放。當(dāng)以后再次進(jìn)入該過程時,變量原來的值可以繼續(xù)使用。用static來聲明。運行結(jié)果526.6.2靜態(tài)變量局部變量可以分為動態(tài)變量6.6.2靜態(tài)變量程序代碼如下:PrivateFunctionSum(nAsInteger)'計算求和子函數(shù)

StaticfAsIntegerf=f+nSum=fEndFunctionPrivateSubForm_Click()'單擊窗體DimiAsIntegerFori=1To5Print"∑"&i&"="&Sum(i)NextiEndSub【例6-13】使用函數(shù)調(diào)用的方法計算∑n,在函數(shù)中使用靜態(tài)變量。運行結(jié)果536.6.2靜態(tài)變量程序代碼如下:【例6-13】使用函6.6.3使用同名的變量1.不同模塊中的全局變量同名如果不同模塊中的全局變量使用同一名字,則通過引用“模塊名.變量名”來引用變量。2.全局變量與局部變量同名當(dāng)全局變量與局部變量同名時,全局變量和局部變量在不同的范圍內(nèi)有效。在過程內(nèi)部局部變量有效;而在過程外全局變量有效。546.6.3使用同名的變量1.不同模塊中的全局變量同名6.6.3使用同名的變量3.窗體的屬性、控件名與變量同名窗體的屬性、控件、符號常數(shù)和過程都被視為窗體模塊中的模塊級變量。在窗體模塊內(nèi)和窗體中控件同名的局部變量將遮住同名控件。因此必須引用窗體名稱或Me關(guān)鍵字來限定控件,才能設(shè)置或得到該控件的屬性值。556.6.3使用同名的變量3.窗體的屬性、控件名與變量6.7過程的作用范圍 6.7.1調(diào)用其他模塊的過程 6.7.2靜態(tài)過程 6.7.3SubMain過程566.7過程的作用范圍 6.7.1調(diào)用其他模塊的過程 6.7.1調(diào)用其他模塊的過程1.局部過程和全局過程過程的作業(yè)范圍是通過定義語句來聲明的。語法:[Private|Public][Static]Sub過程名([參數(shù)列表])[Private|Public][Static]Function函數(shù)名([參數(shù)列表])[As數(shù)據(jù)類型]576.7.1調(diào)用其他模塊的過程1.局部過程和全局過程6.7.1調(diào)用其他模塊的過程2.調(diào)用其他模塊的過程(1)調(diào)用其他窗體模塊中的過程調(diào)用其他窗體中的全局過程,必須以窗體名為調(diào)用的前綴,即“窗體名.過程名”。(2)調(diào)用其他標(biāo)準(zhǔn)模塊中的過程調(diào)用其他標(biāo)準(zhǔn)模塊中的過程,如果過程名是唯一的則不必在調(diào)用時加模塊名。(3)調(diào)用其他類模塊的過程調(diào)用類模塊中的全局過程,要求用指向該類的某一實例作前綴。586.7.1調(diào)用其他模塊的過程2.調(diào)用其他模塊的過程(16.7.2靜態(tài)過程在過程定義中也可以添加“Static”關(guān)鍵字來聲明過程,或選擇“工具”菜單“添加過程”菜單項,在出現(xiàn)的對話框中選擇“所有本地變量為靜態(tài)變量”,如圖所示。596.7.2靜態(tài)過程在過程定義中也可以6.7.2靜態(tài)過程在過程名前加上Static關(guān)鍵字,表明該過程中的變量(無論它們是怎么聲明的)都是靜態(tài)變量。PrivateStaticSubTest()'測試靜態(tài)變量子過程DimxAsIntegerStaticyAsIntegerx=x+1y=y+1Print"x="&x,Print"y="&yEndSub606.7.2靜態(tài)過程在過程名前加上Static6.7.3SubMain過程SubMain過程稱為啟動過程,當(dāng)應(yīng)用程序啟動時不希望加載任何窗體,或者在裝載窗體前對一些條件進(jìn)行初始化,可以通過在標(biāo)準(zhǔn)模塊中創(chuàng)建一個SubMain的子過程,運行工程時先運行SubMain子過程。設(shè)置SubM

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論