6.1VB的過程設(shè)計及子過程(Sub)的定義與調(diào)用
1.什么是過程
在程序設(shè)計中,為各個相對獨立的功能模塊所編寫的一段程序稱之為過程。
2.VB中的自定義過程分類
(1)以“Sub”保留字開始的子程序過程 (包括事件過程和通用過程),不返回值;
(2)以“Function” 保留字開始的函數(shù)過程,返回一個值;
(3)以“Property” 保留字開始的屬性過程,可以返回和設(shè)置窗體、標(biāo)準(zhǔn)模塊以及類模塊的屬性值,也可以設(shè)置對象的值。
3. 事件過程
(1)窗體事件過程
語法:Private Sub Form_事件名([參數(shù)列表])
[局部變量和常數(shù)聲明]
語句塊
End Sub
注意:
1)窗體事件過程名由Form_事件名組成,多文檔窗體用MDIForm_事件名;
2)每個窗體事件過程名前都有一個Private的前綴,表示該事件過程不能在它自己的窗體模塊之外被調(diào)用;
3)事件過程有無參數(shù),完全由VB提供的具體事件本身決定,用戶不可以隨意添加。
(2)控件事件過程
語法:Private Sub 控件名_事件名([參數(shù)列表])
[局部變量和常數(shù)聲明]
語句塊
End Sub
注意:其中的控件名必須與窗體中某控件相匹配,否則VB將認(rèn)為它是一個通用過程。
(3)建立事件過程的方法
1)打開代碼編輯器窗口(兩種方法:雙擊對象或從工程管理器中單擊“查看代碼”按鈕)
2)在代碼編輯器窗口中,選擇所需要的“對象”和“事件過程”
3)在Private Sub …… End Sub之間鍵入代碼
4)保存工程和窗體
(4)事件過程的調(diào)用
事件過程由一個發(fā)生在VB中的事件來自動調(diào)用或者由同一模塊中的其他過程顯示調(diào)用。
2.通用過程
通用過程是一個必須從另一個過程顯示調(diào)用的程序段,通用過程有助于將復(fù)雜的應(yīng)用程序分解成多個易于管理的邏輯單元,使應(yīng)用程序更簡潔、更易于維護(hù)。
通用過程分為公有(Public)過程和私有( Private)過程兩種,公有過程可以被應(yīng)用程序中的任一過程調(diào)用,而私有過程只能被同一模塊中的過程調(diào)用。
(1)定義方法:
[ Private | Public ] [ Static] Sub 過程名([參數(shù)列表])
[局部變量和常數(shù)聲明] ‘用Dim 或Static聲明
語句塊
[Exit Sub]
語句塊
End Sub
注意:
1)缺省[ Private | Public ]時,系統(tǒng)默認(rèn)為 Public ;
2)Static 表示過程中的局部變量為“靜態(tài)”變量;
3)過程名的命名規(guī)則與變量命名規(guī)則相同,在同一個模塊中,同一符號名不得既用作Sub過程名,又用作Function過程名。
4)參數(shù)列表中的參數(shù)稱為形式參數(shù),它可以是變量名或數(shù)組名,只能是簡單變量,不能是常量、數(shù)組元素、表達(dá)式;若有多個參數(shù)時,各參數(shù)之間用逗號分隔,形參沒有具體的值。VB的過程可以沒有參數(shù),但一對圓括號不可以省略。不含參數(shù)的過程稱為無參過程。
形參格式為:
[ ByVal ] 變量名[()] [As 數(shù)據(jù)類型]
式中:
變量名[()]:變量名為合法的VB變量名或數(shù)組名,無括號表示變量,有括號表示數(shù)組。
ByVal :表明其后的形參是按值傳遞參數(shù)(傳值參數(shù) Passed By Value),若缺省或用ByRef,則表明參數(shù)是按地址傳遞的(傳址參數(shù))或稱“引用”(Passed By Reference)。
As: 數(shù)據(jù)類型:缺省表明該形參是變體型變量,若形參變量的類型聲明為String,則只能是不定長的。而在調(diào)用該過程時,對應(yīng)的實在參數(shù)可以是定長的字符串或字符串?dāng)?shù)組,若形參是數(shù)組則無限制。
5)Sub 過程不能嵌套定義,但可以嵌套調(diào)用。
6) End Sub 標(biāo)志該過程的結(jié)束,系統(tǒng)返回并調(diào)用該過程語句的下一條語句。
7) 過程中可以用Exit Sub提前結(jié)束過程,并返回到下調(diào)用該過程語句的下一條語句。
(2)建立Sub過程的方法
方法一:
1)打開代碼編輯器窗口
2)選擇“工具”菜單中的“添加過程”
3)從對話框中輸入過程名,并選擇類型和范圍
4)在新創(chuàng)建的過程中輸入內(nèi)容
方法二:
1)在代碼編輯器窗口的對象中選擇“通用”,在文本編輯區(qū)輸入 Private Sub 過程名
2)按回車鍵,即可創(chuàng)建一個Sub過程樣板
3)在新創(chuàng)建的過程中輸入內(nèi)容
3.Sub子過程的調(diào)用
(1) 用Call語句調(diào)用Sub過程
語法:Call 過程名(實在參數(shù)表)
實在參數(shù)的個數(shù)、類型和順序,應(yīng)該與被調(diào)用過程的形式參數(shù)相匹配,有多個參數(shù)時,用逗號分隔。
(2)把過程名作為一個語句來用
語法:過程名 [實參1[,實參2……]]
它與(1)的不同點是:去掉了關(guān)鍵字和實參列表的括號
如上例中可以改成:area a,b,c,w
相關(guān)推薦:計算機(jī)等級考試二級VB二十套上機(jī)試題及答案北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |