1. 程式人生 > >VB中窗體模組、標準模組、類模組的區別

VB中窗體模組、標準模組、類模組的區別

VB的程式碼儲存在模組中。在VB中提供了三種類型的模組:窗體模組、標準模組和類模組。

  簡單的應用程式可以只有一個窗體,所用的程式都駐留在窗體模組中,而當應用程式龐大複雜時,就要另外附加窗體。最終可能有幾個窗體中有一些共同都要執行的程式碼,為了在兩個窗體中不產生重複程式碼,可建立一個獨立的模組,用它實現程式碼公用。該獨立模組即是標準模組。此外還可以建立包含共享程式碼與資料的類模組。

  每個標準模組、類模組和窗體模組可包含:

  宣告。 可將常數、型別、變數和動態連結庫(DLL)過程的宣告放在窗體、類或標準模組的宣告部分。每個模組只有一個宣告部分

  過程。每個模組可有多個過程,過程是劃分VB程式碼的最小單元,每個過程是一個可執行的程式碼片段。VB中主要有子過程、函式過程或者屬性過程等

  各種模組型別

  1.窗體模組

  由於VB是面向物件的應用程式開發工具,所以應用程式的程式碼結構就是該程式在螢幕上表示的對應模型。根據定義,物件包含資料和程式碼。應用程式中的每個窗體都有一個相對應的窗體模組(副檔名為.frm)

  窗體模組是VB應用程式的基礎。窗體模組可以包含處理事件的過程、通用過程以及變數、常數、自定義型別和外部過程的窗體級宣告。寫入窗體模組的程式碼是該窗體所屬的具體應用程式專用的;也可以引用該程式內的其它窗體和物件

  每個窗體模組都包含事件過程,在事件過程中有為響應該事件而執行的程式段。窗體可包含控制元件。在窗體模組中,對窗體上的每個控制元件都有一個對應的事件過程集。除了事件過程,窗體模組還可包含通用過程,它對來自該窗體中任何事件過程的呼叫都作出響應。

  2.標準模組

  標準模組是程式中的一個獨立容器,包含全域性變數、Function(函式)過程和Sub過程(子過程)。

  可將那些與特定窗體或控制元件無關的程式碼放入標準模組中。標準模組中包含應用程式內的允許其它模組訪問的過程和宣告。它們可以包含變數、常數、型別、外部過程和全域性宣告或模組級宣告。寫入標準模組的程式碼不必固定在特定的應用程式上;

  (1)使用標準模組

  在編寫程式時,很可能會遇到一些使用相同變數和例程的窗體和事件過程。在預設狀態下,變數對於事件過程來說是區域性的,就是說僅能在建立這些變數的事件過程中讀取或者修改變數。與之相似,事件過程對於建立它們的窗體來說也是區域性。為了在工程中的所有窗體和事件中共享變數和過程,需要在該工程的一個或多個標準模組中對它們進行宣告和定義。

  標準模組或程式碼模組是具有副檔名.bas,幷包含能夠在程式任何地方使用的變數和過程的特殊檔案。

  正如窗體一樣,標準模組被單 獨列在Project(工程)視窗內,並可通過使用File(檔案)選單中的Save Modulel As選單項存檔。但是,與窗體不同,標準模組不包含物件或屬性設定而只包含可在程式碼視窗中顯示和編輯的程式碼。

  (2)建立標準模組

  如要在程式中建立新 的標準模組,那麼單擊工具條Add Form(新增窗體)按鈕上的下箭頭並單擊Mode(模組),或者單 擊Project(工程)選單中的Add Module(新增模組)選單項。在工程中建立一個空的標準模組的步驟如下:

  S1:啟動VB,開啟一個新的標準工程,單擊工程 選單中的Add Module選單項,單擊Open 按鈕。VB在工程中增加一個名為Module的標準模組。該 模組對應的程式碼視窗被開啟,物件和過程列表框的內容表明該 標準模組的通用宣告已被開啟。在此所宣告的變數與過程 在整個程式都可以使用。

  S2:雙擊工程資源管理器視窗的標題條,以便能看到整個工程資源管理器視窗,

  S3:在File(檔案)選單中,單 擊Save Modulel As

  S4:如果D:/VB6sbs/less10資料夾未被選擇時,選擇該資料夾,鍵入MyTestMod.bas,然後按回車。該標準模組作為MyTestMod.bas檔案儲存到磁碟,並且可以通過Project(工程)的Add File選單項可將此檔案通過其檔名載入到另一個工程中。

  S5:雙擊Project(屬性)視窗標題條。由於模組不包含物件,因此它惟一的屬性就是Name

  S6:將Name屬性改為modVariables,然後按ENTER鍵。

  (3)宣告公用變數

  在標準模組中宣告 全域性變數十分簡單,鍵入關鍵字Public,後跟該 變數名。

  預設狀態下,公用就量在模組中被宣告為變體型別,但是可以通過使用As關鍵字來指定相應型別,可以把公用變數宣告為某個指定的基本型別。

  3.類模組

  在VB中類模組是面向物件程式設計的基礎。可以在類模組中編寫程式碼建立新物件。這些新物件可以包含自定義的屬性和方法。實際上,窗體正是這樣一種類模組,在其上可安放控制元件,可顯示窗體視窗

  用類模組建立物件,這些物件可被應用程式內的過程呼叫。標準模組只包含程式碼,而類模組包含程式碼又包含資料,可視為沒有物理表示的控制元件。

  模組設計的考慮

  在VB中建立應用程式的最重要的部分是設計階段。首先需要為應用程式設計一個使用者介面,這個介面的設計比較容易確定。但設計程式碼的結構就是一項較複雜的工作。構造應用程式的方法不同,可能會造成應用程式的效能以及程式碼的可維護性,可使用性不同。

  VB應用程式呈層次結構。典型應用程式包括若干個模組:應用程式中每個窗體的窗體模組、共享程式碼的標準模組和類模組。每個模組包含若干含 有程式碼的過程:Event過程,Sub過程或Function過程及Property過程。

  在很多情況中都存在著多個物件共享的重複過程。這種情況最好建立一個共享的子過程,使大家都可以呼叫它。即使將來修改這些子程式,則只在一個地方修改就可進行全部修改,這將大大提高程式的可讀性和可維護性。可以把所有的共享操作放在標準的模組中。