VB中模塊與窗體有何區(qū)別與聯(lián)系。
參考答案:[標(biāo)簽:答案]VB的代碼存儲(chǔ)在模塊中。在VB中提供了三種類型的模塊:窗體模塊、標(biāo)準(zhǔn)模塊和類模塊。 簡(jiǎn)單的應(yīng)用程序可以只有一個(gè)窗體,所用的程序都駐留在窗體模塊中,而當(dāng)應(yīng)用程序龐大復(fù)雜時(shí),就要另外附加窗體。最終可能有幾個(gè)窗體中有一些共同都要執(zhí)行的代碼,為了在兩個(gè)窗體中不產(chǎn)生重復(fù)代碼,可創(chuàng)建一個(gè)獨(dú)立的模塊,用它實(shí)現(xiàn)代碼公用。該獨(dú)立模塊即是標(biāo)準(zhǔn)模塊。此外還可以建立包含共享代碼與數(shù)據(jù)的類模塊。 每個(gè)標(biāo)準(zhǔn)模塊、類模塊和窗體模塊可包含: 聲明。 可將常數(shù)、類型、變量和動(dòng)態(tài)鏈接庫(DLL)過程的聲明放在窗體、類或標(biāo)準(zhǔn)模塊的聲明部分。每個(gè)模塊只有一個(gè)聲明部分 過程。每個(gè)模塊可有多個(gè)過程,過程是劃分VB代碼的最小單元,每個(gè)過程是一個(gè)可執(zhí)行的代碼片段。VB中主要有子過程、函數(shù)過程或者屬性過程等。 各種模塊類型:
1.窗體模塊 由于VB是面向?qū)ο蟮膽?yīng)用程序開發(fā)工具,所以應(yīng)用程序的代碼結(jié)構(gòu)就是該程序在屏幕上表示的對(duì)應(yīng)模型。根據(jù)定交,對(duì)象包含數(shù)據(jù)和代碼。應(yīng)用程序中的每個(gè)窗體都有一個(gè)相對(duì)應(yīng)的窗體模塊(文件擴(kuò)展名為.frm) 窗體模塊是VB應(yīng)用程序的基礎(chǔ)。窗體模塊可以包含處理事件的過程、通用過程以及變量、常數(shù)、自定義類型和外部過程的窗體級(jí)聲明。寫入窗體模塊的代碼是該窗體所屬的具體應(yīng)用程序?qū)S玫?;也可以引用該程序?nèi)的其它窗體和對(duì)象
每個(gè)窗體模塊都包含事件過程,在事件過程中有為響應(yīng)該事件而執(zhí)行的程序段。
窗體可包含控件。在窗體模塊中,對(duì)窗體上的每個(gè)控件都有一個(gè)對(duì)應(yīng)的事件過程集。除了事件過程,窗體模塊還可包含通用過程,它對(duì)來自該窗體中任何事件過程的調(diào)用都作出響應(yīng)。
2.標(biāo)準(zhǔn)模塊 標(biāo)準(zhǔn)模塊是程序中的一個(gè)獨(dú)立容器,包含全局變量、Function(函數(shù))過程和Sub過程(子過程)。 可將那些與特定窗體或控件無關(guān)的代碼放入標(biāo)準(zhǔn)模塊中。標(biāo)準(zhǔn)模塊中包含應(yīng)用程序內(nèi)的允許其它模塊訪問的過程和聲明。它們可以包含變量、常數(shù)、類型、外部過程和全局聲明或模塊級(jí)聲明。寫入標(biāo)準(zhǔn)模塊的代碼不必固定在特定的應(yīng)用程序上;
(1)使用標(biāo)準(zhǔn)模塊 在編寫程序時(shí),很可能會(huì)遇到一些使用相同變量和例程的窗體和事件過程。在缺省狀態(tài)下,變量對(duì)于事件過程來說是局部的,就是說僅能在創(chuàng)建這些變量的事件過程中讀取或者修改變量。與之相似,事件過程對(duì)于創(chuàng)建它們的窗體來說也是局部。為了在工程中的所有窗體和事件中共享變量和過程,需要在該工程的一個(gè)或多個(gè)標(biāo)準(zhǔn)模塊中對(duì)它們進(jìn)行聲明和定義。 標(biāo)準(zhǔn)模塊或代碼模塊是具有文件擴(kuò)展名.bas,并包含能夠在程序任何地方使用的變量和過程的特殊文件。 正如窗體一樣,標(biāo)準(zhǔn)模塊被單 獨(dú)列在Project(工程)窗口內(nèi),并可通過使用File(文件)菜單中的Save Modulel As菜單項(xiàng)存盤。但是,與窗體不同,標(biāo)準(zhǔn)模塊不包含對(duì)象或?qū)傩栽O(shè)置而只包含可在代碼窗口中顯示和編輯的代碼。
(2)創(chuàng)建標(biāo)準(zhǔn)模塊 如要在程序中創(chuàng)建新 的標(biāo)準(zhǔn)模塊,那么單擊工具條Add Form(添加窗體)按鈕上的下箭頭并單擊Mode(模塊),或者單 擊Project(工程)菜單中的Add Module(添加模塊)菜單項(xiàng)。在工程中創(chuàng)建一個(gè)空的標(biāo)準(zhǔn)模塊的步驟如下: S1:?jiǎn)?dòng)VB,打開一個(gè)新的標(biāo)準(zhǔn)工程,單擊工程 菜單中的Add Module菜單項(xiàng),單擊Open 按鈕。VB在工程中增加一個(gè)名為Module的標(biāo)準(zhǔn)模塊。該 模塊對(duì)應(yīng)的代碼窗口被打開,對(duì)象和過程列表框的內(nèi)容表明該 標(biāo)準(zhǔn)模塊的通用聲明已被打開。在此所聲明的變量與過程 在整個(gè)程序都可以使用。 S2:雙擊工程資源管理器窗口的標(biāo)題條,以便能看到整個(gè)工程資源管理器窗口, S3:在File(文件)菜單中,單 擊Save Modulel As S4:如果D:\VB6sbs\less10文件夾未被選擇時(shí),選擇該文件夾,鍵入MyTestMod.bas,然后按回車。該標(biāo)準(zhǔn)模塊作為MyTestMod.bas文件保存到磁盤,并且可以通過Project(工程)的Add File菜單項(xiàng)可將此文件通過其文件名加載到另一個(gè)工程中。 S5:雙擊Project(屬性)窗口標(biāo)題條。由于模塊不包含對(duì)象,因此它惟一的屬性就是Name S6:將Name屬性改為modVariables,然后按ENTER鍵。
3.類模塊 在VB中類模塊是面向?qū)ο缶幊痰幕A(chǔ)??梢栽陬惸K中編寫代碼建立新對(duì)象。這些新對(duì)象可以包含自定義的屬性和方法。實(shí)際上,窗體正是這樣一種類模塊,在其上可安放控件,可顯示窗體窗口 用類模塊創(chuàng)建對(duì)象,這些對(duì)象可被應(yīng)用程序內(nèi)的過程調(diào)用。標(biāo)準(zhǔn)模塊只包含代碼,而類模塊包含代碼又包含數(shù)據(jù),可視為沒有物理表示的控件。
回復(fù):哈哈,跟我當(dāng)初一樣,三者之間難分難解,真讓人頭痛.窗體可以看做是一個(gè)主體,一個(gè)可視化的命令窗口.[結(jié)構(gòu)化語言發(fā)展到一定程序的產(chǎn)物]其實(shí)程序的主體就是模塊,C語言就是典型的代表,結(jié)構(gòu)化的語言.新手可以簡(jiǎn)單理解為編寫過程的地方,以便我們調(diào)用. 如在模塊中:public sub DelFile()Kill "C:\1.txt" '刪除C:\1.txtend sub寫了過程之后,我們就可以調(diào)用了.例如在窗體的按鈕Command1中:Private sub command_Click()DelFile '//調(diào)用模塊里的DelFile過程,實(shí)現(xiàn)刪除 C:\1.txtend sub再說說類模塊。類模塊簡(jiǎn)稱類,跟模塊相似,不同的是類是不可視的控件.Usercontrol[控件]其實(shí)就是類,只不過他是可視的.按鈕,文本框也是類,都是可視化的類.這些概念等真正對(duì)VB有夠深的了解,就能迎刃而解了.表達(dá)不大清楚,見諒. |
|