第十章 使用模塊和過程
模塊(module)是程序中一種單獨的區域,其中可包含全局變量(或稱公共變量)、函數和子過程。
10.1 使用模塊
默認情況下,事件過程被聲明為”私有“,只有創建他們的窗體才能調用。模塊是一種特殊的文件,該文件的擴展名為.vb 。
在程序中創建新模塊,單擊標注工具欄上的【添加新項】或【項目】菜單下面的【添加新項】命令(也可以單擊【項目】-【添加模塊】命令)。
10.2 使用公共變量
在模塊聲明全局或公共變量很容易-在變量名和類型聲明後輸入關鍵字Public。聲明變量後,就可以在程序的任何過程中讀取、修改或顯示該變量了。
10.3 創建過程
過程的作用就是把相關的語句組合起來以實現一個任務。在Visual Basic中主要有兩種類型的過程。
- 函數過程:從事件過程或其他過程按名稱調用的。它常用於計算,函數過程能接受參數,並且通過函數名返回值。
- 子過程:也是從事件過程或其他過程按名稱調用的,它能夠接受參數,以參數列表的形式返回修改後的值。和函數過程不同的是,子過程不返回與其名稱相關的值。
通用過程(general-purpose procedure)--用在各種編程背景中,具有很高靈活性和可用性的代碼塊。
通用過程的優點:
- 能夠將經常使用的程序語句組與所熟悉的名稱聯系起來
- 消除重復的語句行。可以只定義一次過程而在程序中調用該過程任意次
- 使程序更容易閱讀。
- 簡化程序開發過程。
- 其他項目和解決方案可以重復使用此過程。
- 擴展Visual Basic語言。
10.4 編寫函數過程
函數過程是位於Function語句和end Function關鍵字之間的一系列語句。
默認情況下,在一個模塊中聲明的 函數過程 和 子過程 是公共的,能被項目中的任何事件過程調用。
基本語法:
Function FunctionName([Arguments]) as Type
function statements
[return Value]
End Function
FunctionName 是要創建的函數名
As Type 是一對關鍵字,用於指定函數返回值的數據類型。
Arguements 為可選項
Function Statements 為實現函數功能的語句
Return 表明何時要返回值
10.4 編寫子過程
子過程類似函數過程,基本語法:
Sub ProcedureName([arguments])
procedure staements
end Sub
ProcedureName 是子過程名。
10.6 補充知識:按傳值方式和引用方式傳遞參數
下面是有關選用Byval 和 ByRef 的原則:
- 當不需在調用過程中修改通過參數傳遞到過程的變量時,使用Byval
- 當需要在調用過程中修改通過參數傳遞到過程的變量時,使用ByRef
- 不確定的時候,使用Byval
第十一章 使用數組管理數值和字符串數據
本章的知識為以後的數據庫編程技術做准備。
數組的開始索引是0。
11.1 使用變量數組
數組是用於在程序運行期間存儲任意數量數據的機制。語法為:
Dim ArrayName(Dim1Index,Dim2Index,Dim3index,...) as DataType
參數說明
Dim 用來聲明數組的關鍵字
- Arrayname 是數組名
- Dim1Index 是第一維的上限值
- dataType 是數組中存儲的數據的類型
或 使用To關鍵字
dim employees(0 to 9) as string 數組的下限必須為0,不能使用此語法創建下限不為0的數組。
LBound 和 UBound 函數,分別返回數組的下限和上限值。
LBound(ArrayName)和 UBound(ArrayName)
創建動態數組:
Dim Temperatures() as string
ReDim Temperatures(9)
但是Redim不能改變數組的維度數。如果是多維數組,只能改變最後一維的長度。
11.2 使用ReDim Preserve 語句保存數組原有數據
默認情況下,ReDim 在改變數組長度的時候會清空數組,如果要是想保留原來的數據,需要使用Preserve 關鍵字。
11.3 補充知識:使用Array類中的方法處理大型數組
常用方法包括:Array.Sort 、 Array.Find、Array.Reverse 、Array.Copy 和Array.Clear 。
Array.Sort(ArrayName),對數組中的元素進行排序。
第十二章 使用集合和System.Collections命名空間
12.1 使用對象集合
Controls集合是在打開新窗體自動創建的,當向窗體添加對象時,對象變成集合的一部分。要想識別窗體中最後創建的對象,可以對索引值是0的對象進行定義,比如下面的語句
Controls(0).text="Business"
12.2 創建自己的集合對象
Visual Basic允許創建自定義集合來跟蹤程序中的數據並系統地對數據進行處理。集合是對數組的一種補充。
語法如下:
Dim CollectionName as New Collection()
使用add命令添加
Collectionname.add("Titm1")