第一章VB程序設計初步_第1頁
第一章VB程序設計初步_第2頁
第一章VB程序設計初步_第3頁
第一章VB程序設計初步_第4頁
第一章VB程序設計初步_第5頁
已閱讀5頁,還剩28頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第一章VB程序設計初步11Visual Basic的發展Visual Basic(以下簡稱VB)是Microsoft公司于1991年推出Windows應用程序開發工具。Visual一詞具有“可視化的”、“形象化的”的含義,在語言功能方面,VB與早期的Basic語言基本兼容,但由于VB具有良好的圖形用戶界面(Graphic User interface,即GUI),因此有人稱它為可視化的Basic語言。和Basic語言相比,VB提供的一系列可視化設計工具,大大簡化了應用程序界面的設計工作,不僅易學易用,同時其編程系統采用了面向對象、事件驅動機制,非專業人員也可以使用該語言工具方便地完成基于Win

2、dows的應用程序開發,因而一經推出,便獲得了巨大成功。從1991年至1997年,微軟相繼推出了VB1.0,VB2.0,VB3.0,VB4.0及VB5.0版,1998年發布的Microsoft Visual Studio 98中包含了VB6.0,2000年又推出了VB.net。VB 5.0以前的版本主要用于16位應用程序開發,VB6.0則專為32位操作系統設計。本書主要介紹VB6.0。VB6.0包括三種版本,分別為學習版、專業版和企業版。三種版本適于不同層次的用戶。()學習版是VB的基礎版本,該版本包含了所有VB的標準控件及網格控件、數據綁定控件和Tab對象。適合初學者用來學習開發Window

3、s應用程序。()專業版為專業編程者提供了一整套功能完備的開發工具,包括了學習版中的全部功能,同時加入了ActiveX 控件、Internet控件和報表控件等。()企業版該版本包含了專業版的全部功能,增加了自動化管理器、部件管理器、數據庫管理工具、Microsoft Visual Source Safe面向工程版的控制系統等。如無特別說明,本書中內容均基于VB.企業版作介紹,所有程序在VB.企業版下運行通過,大多數程序可以在專業版和學習版中運行。12VB集成開發環境121啟動和退出啟動VB的常用方法有兩種:使用“開始”菜單中的“程序”命令,選擇“Microsoft Visual Studio 6

4、.0中文版”子菜單中的“Microsoft Visual Studio 6.0中文版”程序。為VB.在桌面上建立快捷方式,此后每次啟動只需雙擊其快捷方式即可。啟動后的窗口如圖所示,在窗口中列出了VB能夠建立的應用程序類型,窗口的左上角有“新建”、“現存”、“最新”三個選項卡。如果單擊“現存”或“最新”選項卡,則可分別顯示現有的或最新的VB應用程序文件名列表,供用戶從列表中選擇要打開的文件名,此兩個選項卡均是針對已保存過的VB程序而使用,對初學者或第一次建立某個VB應用程序,一般選擇“新建”選項卡。 圖1-1 VB啟動窗口單擊“新建”選項卡,顯示“新建工程”對話框,如圖所示。對話框中顯

5、示了在VB中使用的多種工程類型,可滿足不同的需要,主要有:圖1-2 “新建工程”對話框()標準EXE建立一個標準的EXE工程。()ActiveXEXE和ActiveX DLL兩種應用程序只能在專業版和企業版中建立。功能上兩種程序是一致的,只是包裝不同。前者包裝成EXE(可執行)文件,后者包裝成DLL(動態鏈接庫)。() ()   ActiveX控件只能在專業版或企業版中建立,主要用于開發用戶自已定義的ActiveX控件。() ()   VB應用程序向導該向導用于在開發環境下直接建立新的應用程序框架。() ()   數據工程主要提供開發

6、數據報表應用程序的框架。() ()   IIS應用程序用VB代碼編寫服務器端的Internet應用程序。() ()   外接程序選擇該類型,可以建立自己的VB外接程序,并在開發環境中自動打開連接設計器。() ()   DHTML應用程序只能在專業版或企業版中建立。可以編寫響應HTML頁面操作的VB代碼,并可把處理過程傳送到服務器上。() ()   VB企業版控件用來在工具箱中加入企業版控件圖標。以上多種工程類型,第一種為初學者常用。當我們在對話框中選擇要建立的工程類型,如“標準EXE”,然后單擊“打開”按鈕,可進入

7、VB集成開發環境,如圖1,集成環境中有多個窗口,在下一節中我們將詳細介紹。圖1-3 VB集成開發環境退出VB集成開發環境也有多種方法,如:打開圖1-3所示環境中的“文件”菜單,單擊“退出”或按Alt+Q.。      單擊VB應用程序窗口右上角關閉窗口按鈕      單擊VB應用程序窗口左上角控制菜單中的“關閉”子菜單或按Alt+F4。如果在退出VB前沒有保存當前應用程序相應文件,則系統在退出時會彈出保存文件的提示,我們可根據需要保存相應文件,保存方法詳見1.5節。122VB集成開發環境如圖1-3所示,VB6.0集

8、成開發環境具有微軟應用軟件相似的窗口組成,但也有幾個VB獨立的窗口,本節內容有助于認識VB集成開發環境。1221主窗口1 1  標題欄和菜單欄類似于Windows其它應用程序窗口,VB的標題欄最左上角是控制菜單,最右上角有最小化、最大化(還原)和關閉按鈕。控制菜單的右側顯示當前激活的工程名稱及當前工作模式,如圖1-3中所示工程名稱為“工程1”,工作模式為Microsoft Visual Basic 設計。VB的工作模式有三種:設計模式在此模式下可進行用戶界面的設計和代碼的編寫。運行模式運行應用程序,但不可編輯用戶界面及代碼。中斷模式暫時中斷應用程序的運行,按F5鍵程序從中斷處繼續運行

9、。此模式下可編輯代碼,不可編輯界面,并會彈出“立即”窗口,“立即”窗口的作用后面將作介紹。菜單欄中有“文件”、“編輯”等13個菜單項,包含了VB編程中常用的命令。各菜單功能簡介如下:      文件(File)包含了與訪問文件有關的菜單項,用于新建、打開、保存、顯示最近打開的工程文件及生成可執行文件等命令。      編輯(Edit)包含了與代碼編輯、控件編輯等有關的菜單項。      視圖(View)包含了顯示或隱藏各種窗口的菜單項,如代碼窗口、對象窗口、屬性窗口、工具欄等

10、,可通過該菜單在各窗口中切換查看代碼或控件。      工程(Project)包含了與工程管理有關的菜單項,如向工程中添加窗體、模塊,從工程中移除部件等。      格式(fOrmat)包含了編輯用戶界面時對控件進行調整的菜單項,如控件的對齊、大小的統一等。      調試(Debug)包含了常用調試VB應用程序的菜單項。      運行(Run)用于程序啟動、設置斷點和停止等程序運行的命令。    

11、60; 查詢(Query)包含了操作數據庫表時的查詢以及其它數據訪問命令的菜單項。      圖表(Diagram)包含了有關圖表處理菜單項。      工具(Tools)用于集成開發環境的設置以及工具的擴展,如向模塊和窗體添加過程、過程屬性、向窗體添加菜單等操作。      外接程序(Add-Ins)主要用于為工程增加和刪除外接程序。      窗口(Windows)包含了與屏幕布局窗口有關的菜單項,如屏幕窗口的層疊、平鋪等。 

12、60;    幫助(Help)提供幫助信息,此項功能須安裝VB MSDN才有效。2 2  工具欄菜單欄下方的工具欄提供了訪問常用菜單命令的快捷方式,工具欄中大多數按鈕都對應菜單中的一條常用命令,初學者可將鼠標在工具欄各按鈕上短時停留,根據鼠標提示信息獲取該按鈕的功能提示。VB中有標準工具欄、編輯工具欄、窗體編輯器工具欄、調試工具欄等,一般編程時會使標準工具欄顯示出來,其它工具欄根據需要通過執行“視圖”菜單中“工具欄”子菜單的級聯菜單中的相應命令,來顯示(或隱藏)。下表1-1所示為標準工具欄上各命令按鈕的名稱及其功能。表1-1 工具欄中各圖標簡介按鈕名稱功

13、 能 添加Standard EXE工程添加一個新工程,相當于“文件”菜單中的“添加工程”命令添加窗體在工程中添加一個新窗體,相當于“工程”菜單中的“添加窗體”命令菜單編輯器打開菜單編輯對話框,相當于“工具”菜單中的“菜單編輯器”命令 打開工程 保存工程打開一個已有的工程或保存一個工程 剪切 復制 粘貼將選定內容剪切、復制剪貼板及把剪貼板內容粘貼到當前插入位置 查找打開“查找”對話框,相當于“編輯”菜單中的“查找”命令 撤消和重復撤銷當前修改及對“撤消”的反操作 啟動中斷結束運行、暫停、結束一個應用程序的運行的快捷方式 工程資源管理器快速打開或切換至工程資源管理器窗口 屬性窗口快速打開或切換至屬

14、性窗口 窗體布局窗口快速打開或切換至窗體布局窗口 對象瀏覽器打開“對象瀏覽器”對話框 工具箱快速打開或切換至工具箱窗口,相當于“視圖”菜單中的“工具箱”命令 數據視圖窗口打開數據視圖窗口 Visual Component Manager打開Visual Component Manager對話框 1222其它窗口除主窗口外,VB集成環境中還有一些其它窗口,如窗體設計器窗口、工具箱窗口、屬性窗口、工程資源管理器窗口、調色板窗口、代碼窗口、立即窗口。1 1  工具箱窗口如圖1-4所示,在集成開發環境的左邊區域窗口為工具箱窗口。工具箱窗口內有一個選項卡“通用(General)”,內

15、含21個圖標,除指針外,其余20個均為VB可視標準控件。指針僅用于移動窗體和控件及調整它們的大小。用戶可通過“工程”菜單中“部件”命令來裝入其它控件到工具箱中。若要不顯示工具箱,可直接關閉該窗口,執行“視圖”菜單中的“工具箱”命令,可令工具箱再次顯示出來。注意,工具箱顯示出來后,在代碼運行狀態下會自動隱藏,返回設計狀態又會自動出現。圖1-4 工具箱窗口除 “通用(General)” 選項卡外,用戶還可添加選項卡來定制自己的專用工具,方法是在工具箱任意處單擊右鍵,選擇快捷菜單的“添加選項卡”命令,在彈出的對話框中輸入新增選項卡的名稱,“確定”后即成功添加了一個自定義選項卡(如圖1-4),接下來可

16、對新增選項卡加控件,方法有二,一是直接拖動原有選項卡中已有控件至新增選項卡,二是單擊選項卡激活后,再通過“工程”菜單的“部件”命令裝入其它控件。2 2  窗體設計器窗口窗體設計器窗口位于集成開發環境的中間,簡稱窗體(Form),是應用程序最終面向用戶的窗口,用戶通過與窗體上的控制部件交互可得到結果,各種圖形、圖像、數據等均通過窗體或窗體中的控件顯示出來。每個窗體有一個唯一的名稱標識,按照建立窗體時的順序默認名稱為Form1 、Form2 ,一個應用程序可使用多個窗體,但一個應用程序至少應有一個窗體。 窗體就像一塊畫布,用戶可根據應用程序界面的要求,從工具箱中選取所需要的控件,在窗體上

17、畫出來,這是VB應用程序界面設計的第一步。由圖1-3我們可以看到窗體窗口操作區布滿灰色小點,這是一些網格點,方便用戶在窗體上定位和對齊控件。如果想清除網格點,或者想改變網格點之間的距離,可通過執行“工具”菜單的“選項”命令,在“通用”標簽中調整。3 3  工程資源管理窗口工程是組成一個應用程序的所有文件的集合,利用圖1-5所示的工程資源管理窗口可以對當前使用的工程進行管理,該窗口中有三個按鈕,下接工程資源管理器的文件列表窗口,以層次列表形式列出組成工程的所有文件。三個按鈕功能分別為:“查看代碼”按鈕單擊可切換到代碼窗口,顯示和編輯代碼。“查看對象”按鈕單擊可切換到窗體設計器窗口,顯示

18、和編輯對象。“切換文件夾”按鈕單擊可隱藏或顯示包含在對象文件夾中的個別項目列表。圖1-5 工程資源管理器窗口4 4  代碼窗口每個窗體有自己的代碼窗口,專門用于顯示和編輯應用程序源代碼,如圖1-6。打開代碼窗口有以下三種方法:      由“視圖”菜單中選擇“代碼窗口”命令      從工程資源管理窗口中選擇一個窗體或標準模塊,并單擊“查看代碼”按鈕。      雙擊要查看或編輯代碼的窗體或控件本身。圖1-6 代碼窗口代碼窗口中各部分簡介如下:“對象”列表框單擊列表

19、框下拉按鈕,可顯示窗體中的對象名。其中,“通用”表示與特定對象無關的通用代碼,一般利用它聲明模塊級變量或用戶編寫自定義過程。“過程”列表框在“對象”列表框選擇某一對象名,在過程列表框中選擇事件過程名,可構成選中對象的特定事件過程模板,用戶可以該模板內輸入代碼。其中“聲明”表示聲明模塊級變量。“代碼編輯區”用戶在此輸入和編輯代碼。“過程查看”按鈕單擊該按鈕代碼編輯區只能顯示出所選定過程代碼。“全模塊查看”按鈕顯示模塊中全部過程代碼。5 5  屬性窗口在進行應用程序界面設計時,窗體和控件的屬性,如標題、大小、字體、顏色等,可以通過屬性窗口來設置和修改。圖1-7 屬性窗口屬性窗口如圖1-7

20、所示,主要由4個部分組成:對象列表框單擊其右邊下拉按鈕可打開所選窗體包含對象的列表。屬性顯示排列方式有兩個選項,用戶可以選擇“按字母序”或“按分類序”兩種方式排列顯示屬性。屬性列表框屬性列表框分為左右兩列,左邊是各種屬性的名稱,右邊是該屬性的默認值,用戶可由左邊選定某一屬性,然后在右邊對該屬性值進行設置或修改。不同對象所列出的屬性值不同。屬性含義說明框當在屬性列表框中選定某一屬性時,在屬性含義說明框中將顯示所選屬性的含義。初學者可利用該項功能認識和熟悉對象的屬性含義。對象的某些屬性的取值是有一定限制的,如對象的可見性(Visible)只能設置True (可見)和False(不可見),而有些屬性

21、,如標題(Caption)可以設為任何文本。在實際應用中,不可能也沒有必要設置每個對象的所有屬性,很多屬性都可取其默認值。僅在設計階段才能激活屬性窗口,方法有:      選擇“視圖”菜單中“屬性窗口”命令。      按F4鍵或單擊工具欄上的“屬性窗口”按鈕。      鼠標單擊屬性窗口的任意位置。6 6  窗體布局窗口用于指定程序運行時的初始位置。主要為使所開發的應用程序能在不同分辨率的顯示器上使用,用戶只要用鼠標拖動如圖1-8所示“窗體布局窗口”中的Form窗

22、體的位置,就決定了該窗體運行時的初始位置。若一個工程中有多個窗體,在布局窗口同時可以觀察多個窗體的相對布局。圖1-8 窗體布局窗口7 7  立即窗口為調試應用程序而提供,用戶或直接在該窗口利用Print方法或直接在程序中用Debug.Print顯示所關心的程序中的表達式的值。 13VB程序設計特點用VB設計應用程序,首先要做的是布置好所需要的控件對象并對這些對象作必要的初始屬性設置工作,這是界面設計階段(后文簡稱設計階段),接下來是根據應用程序需求編寫相應事件過程代碼并調試運行,我們把這一階段稱為編碼運行階段。兩個階段的工作平臺可以通過“工程資源管理器”窗口中的“查看對象”

23、和“查看代碼”兩個按鈕來切換。本節將介紹VB程序設計可視化編程、面向對象、事件驅動等特點。131可視化編程環境傳統的面向過程的結構化程序設計,用戶界面是通過編寫代碼來實現,開發者在設計過程中看不到界面的實際顯示效果,只有等到編譯后程序運行時才能觀察到,若對界面要作修改,必須返回到程序中去修改,顯然影響了軟件開發效率。而在VB中,應用的是面向對象的程序設計(Object-Oriented Programming),把程序和數據封裝起來成為一個對象(Object),每個對象都是可視的(Visual),依靠VB提供的可視化設計平臺,開發者不必再為界面的設計而編寫大量的程序代碼,只需按照設計要求的屏幕

24、布局,在屏幕上“畫”出各種“部件”即對象,如窗口、命令按鈕、菜單等,并設置這些圖形對象的位置、大小、顏色等屬性, VB將自動產生出界面設計代碼,開發者需要編寫的只是實現程序功能的那部分代碼,這種“所見即所得”的可視化用戶界面設計大大提高了程序開發效率。132對象和事件驅動1321類和對象的概念對象是具有特殊屬性(數據)和行為方式的(方法)的實體,在現實生活中到處可以見到,如一輛汽車可看作一個對象,汽車的型號、價格、外觀等特性,稱為屬性,汽車的啟動、加速、減速等是汽車的行為。對象的概念是相對的,根據觀察者的角度可將對象分解和綜合,如汽車還可分解為車頭、車尾,也可分解為發動機、車輪等對象,分解后的

25、對象又都分別具有不同的屬性和行為。類是具有共同抽象的對象的集合,在面向對象的程序設計中,類是創建對象實例的模板,它包含所創建對象的共同屬性描述和共同行為特征的定義。例如,各種各樣的汽車可以看作一個汽車類,具體到某一輛特定的汽車則稱為汽車類的一個實例,即一個對象。VB中的類可分為兩種,一種是由系統設計好,可以直接使用的類;另一類是由用戶定義的類,本書中重點介紹第一種。在上一節所介紹的工具箱中的標準控件均為VB系統設計好的標準控件類,當開發者在窗體上“畫”一個控件的過程即為該控件類的實例化,將控件類轉換成了一個控件對象,以后簡稱為控件。窗體在VB中是一個特例,它既是類又是對象,當用戶向一個工程添加

26、一個新窗體時,實質上就是由窗體類創建了一個窗體對象。除了用戶大量使用的窗體和控件對象外,VB還提供了一些系統對象,如打印機(Printer)、剪貼板(Clipboard)、屏幕(Screen)等,在后面的章節中將涉及系統對象的使用。1322對象的屬性、方法、事件1 1  屬性屬性可看作是對象的性質,對象中的數據就保存在屬性中。在VB可視化編程中,每種對象都有一組特定的屬性。如控件的Name(名稱)屬性、Caption(標題)屬性,Font(字體)屬性、Color(顏色)屬性等決定了控件對象的外觀。VB中要設置或改變對象的屬性有兩種方法:     

27、; 在界面設計階段可通過圖1-7所示的屬性窗口的屬性框直接設置對象的屬性。      在編碼運行階段可通過語句來實現屬性的改變,格式為:對象.屬性=屬性值。兩種方法視程序設計需要可選。例如,要將名稱為cmdEnd的按鈕的Caption屬性值設為“退出”的方法:方法一:直接在該按鈕的屬性框中將其默認的Caption屬性值“command1”修改為“退出”。方法二:在事件過程代碼中書寫語句:cmdEnd.Caption=”退出”。2 2  方法方法是對象本身內含的特殊函數和過程,用于完成某種特定的功能。VB系統本身已將一些通用的過程和函數編寫好并封

28、裝起來了,作為方法供用戶直接調用。方法只能在代碼中使用,調用格式為:對象名稱.方法 參數列表其中, 中為可選項。若省略了對象名稱,則表示當前對象,一般指窗體對象,建議初學者不要省略。例如:Form1.cls調用cls方法,用于清除窗體Form1上顯示的內容Print “Visual Basic 6.0”調用Print方法在當前窗體上顯示“Visual Basic 6.0”文字3 3  事件、事件過程、事件驅動(1)事件事件簡單說就是發生在某對象上的事情。如鼠標的單擊事件(Click)、雙擊事件(Dblclick),鍵盤按下事件(KeyPress)等。每種對象能響應的事件是不同的,VB

29、系統為每個對象預先定義好了一系列事件。(2)事件過程當在某對象上發生了事件后,應用程序就要處理這個事件,處理的過程稱為事件過程,事件過程是指附在該對象上的程序代碼,VB應用程序設計的主要工作就是為對象編寫事件過程中的程序代碼。事件過程的語法格式如下:Private Sub 對象名_事件名(參數列表)處理事件過程相應代碼End Sub 格式中,對象名是指該對象的Name屬性值,事件名是由VB定義好的該對象能識別的事件。【例1.1】,單擊命令按鈕command1,改變當前窗體的標題欄顯示文字為“事件過程示例”,對應事件過程代碼如下:Private Sub Command1_Click( ) For

30、m1.Caption = "事件過程示例"End Sub(3)事件驅動在VB中程序執行后等待某個事件的發生,然后去執行處理此事件的事件過程,待事件過程執行完畢后,系統又處于等待某事件發生的狀態,這就是事件驅動的程序設計方式。事件發生的順序決定了代碼執行順序,若事件不被驅動,則該事件相應的事件過程代碼永遠不執行。這種程序執行方式和傳統的面向過程的應用程序執行方式完全不一樣。因此,一個典型的VB應用程序的執行步驟可分解為:      啟動應用程序,裝載和顯示窗體      等待某事件發生,事件發生后

31、,執行相應事件過程。本步驟重復執行,直至應用程序結束。【注意】在一個對象上可能同時發生多個事件,如單擊鼠標,同時發生了Click,MouseDown,MouseUp事件,但用戶寫程序時,僅對需要的事件過程編寫代碼,無處理過程代碼的事件為空事件過程,系統對空事件過程不作處理。過程模板是系統自動生成,無需用戶輸入(自定義過程除外)。1323VB控件對象的基本操作用VB進行應用程序設計的過程,實際上就是與一組對象進行交互的過程,VB控件對象使用最為頻繁,因此,準確理解控件對象,掌握控件對象(以下簡稱控件)的基本操作,如建立、命名、選定、復制、刪除等,是設計VB應用程序的基礎,本小節將介紹VB標準控件

32、的基本操作。1 1  控件的建立(畫法)在窗體上畫(建立)一個控件的方法有兩種:      直接在工具箱中雙擊所需控件圖標,如文本框圖標,在窗體上即出現一個默認大小的對象框,用戶可在窗體中對其作縮放及移動操作。      單擊工具箱中相應控件圖標如文本框圖標,將鼠標移到窗體上,此時鼠標光標變為“+”號(“+”號的中心即為所需控件定位的左上角),將“+”號移到窗體適當位置,按下鼠標左鍵向右下方拖動至所需大小后釋放。【注意】每單擊一次工具箱中相應的控件圖標,只能在窗體上畫一個相應的控件,如果要畫多個某種類型控

33、件,必須多次單擊相應的控件圖標。2 2  控件的選定剛畫完一個控件后,在該控件的邊框上有8個黑色小方塊,稱為控制柄,此時該控件叫做活動控件或當前控件,對控件的所有操作都是針對活動控件來進行。因此,為了對一個控件進行后續操作,必須先將該控件“激活”。方法很簡單,只需單擊欲操作的對象就可“激活”,也稱為選定了該對象。如果要同時選定多個對象,有兩種方法:      先選定一個對象,按住Ctrl(或Shift)鍵不放,再分別單擊其它要選定的控件。      和Windows下選定多個連續文件或文件夾相似,按下鼠標

34、左鍵拖動鼠標光標,將欲選定的對象包圍在一虛線框中,再釋放。選定多個對象后,屬性窗口中只顯示它們共同的屬性,如果修改其屬性值,則被選定的所有控件的屬性都將作相應改變,可同時對多個對象進行相同操作。在被選定的多個控件中,有一個控件的控制柄是實心小方塊(其它為空心),這個控件稱為“基準控件”。當對被選擇的控件進行對齊、調整大小等操作時,將以“基準控件”為準。3 3  控件的復制復制(拷貝)一個控件步驟如下:      選定待復制控件,使之呈活動狀態。      單擊“編輯”菜單中“復制”命令,將把活動控件復制到

35、剪貼板上。      執行“編輯”菜單中的“粘貼”,這時屏幕上將顯示是否要創建控件數組的對話框,單擊對話框中的“否”按鈕,則復制了一個標題(Caption)屬性相同而名稱(Name)屬性不同的控件對象。【注意】對初學者,最好不要用“復制”和“粘貼”方法來建立控件,因為這樣做很容易不小心建成控件數組,有關控件數組的知識將在第四章中學習。4 4  控件的刪除要刪除一個控件對象,只需選定該對象,將其變為活動控件,按Delete鍵即可。5 5  控件的移動和縮放當控件處于活動狀態時,把鼠標光標移到控件邊框內任何位置,按住鼠標左鍵拖動,可將控件

36、移到窗體上任何位置再釋放。對被激活了的控件,直接用鼠標拖拉上、下、左、右四個小方塊(控制柄)中的某一個,可以使控件在相應的方向上放大或縮小;如果拖拉位于四個角上的控制柄,則可使該控件同時在兩個方向上放大或縮小。另外,在屬性列表中,有四種屬性與窗體及控件的位置和大小有關,四種屬性分別是Top、Left、Width和Height,窗體和控件的位置由Top和Left屬性確定,而Width(表示控件的寬度)和Height(表示控件的高度)屬性決定控件的大小,因此我們還可以在屬性窗口通過改變控件四種屬性值來改變它們的位置和大小。6 6  多個控件的對齊與調整窗體中的多個控件常需要進行對齊和調整

37、,如多個控件的對齊,多個控件的間距調整,統一大小,前后順序的調整等。操作方法是:先選定多個待調整的控件,然后使用“格式”菜單;或通過“查看”菜單中的“工具欄”選擇“Form Editor”打開窗體編輯工具欄,使用其中的工具作控件的調整操作。7 7  控件對象的命名每個控件對象都有自己的名稱(Name),有了名稱才能在程序代碼中引用該對象。建立的控件都有默認的名稱,如窗體的名稱form1、form2、命令按鈕的默認名稱command1、command2等。為了能見名見義,用戶可以屬性窗口中設置控件的Name屬性來給對象重新命名,注意,名稱必須以字母或漢字開頭,由字母、漢字、數字串組成,

38、長度<=255個字符,其中可以出現下劃線(但最好不用,以免不小心與VB代碼中的續行符混淆)。名稱最好有一定意義,一種比較好的做法稱為“匈牙利命名法”,即用三個小寫字母作為對象的Name屬性的前綴。則一個控件的命名采取如下方式:控件前綴(表示控件的類型)+控件代表的意義或作用例如:cmdEnd用于表示一個“結束”按鈕、frmFirst可為第一個窗體的名稱,。1324VB程序的結構應用程序是一個指令集合,用于操縱計算機完成指定的操作。VB把用來構造一個應用程序的所有相關文件合稱為一個工程(Project)文件,其擴展名為.vbp。VB中使用工程來管理不同文件。一個工程通常包括以下幾類文件:

39、     工程文件(.vbp)一個工程只有一個工程文件,這管理該工程的所有部件。      窗體文件(.frm)一個窗體對應一個窗體文件,一個應用程序中至少有一個窗體,也可有多個。該文件中包括窗體及其上控件的屬性設置、窗體及變量的說明、事件過程、窗體內的通用過程、外部過程的窗體及聲明等。      窗體的二進制數據文件(.frx)若一個窗體中包括圖片或圖標等二進制信息,則保存窗體文件.frm的同時,會產生一個與該窗體文件具有相同主文件名的.frx文件。   

40、;   標準模塊文件(.bas)當應用程序大而復雜,需要設計多個窗體,并在多個窗體間有共享代碼時,可引入標準模塊。標準模塊可以包含全局或模塊級變量、常數、類型、外部過程聲明等,標準模塊中只能存放通用過程,可供本工程內各窗體調用。一個應用程序允許有多個標準模塊。默認應用程序不含標準模塊文件,用戶需要時可通過“工程”菜單“添加模塊”命令添加。      類模塊文件(.cls)用于創建用戶自定義新對象,新對象也含有方法和屬性。默認應用程序不含類模塊文件。用戶需要時可通過“工程”菜單“添加類模塊”命令添加。    

41、;  資源文件(.res)該文件是可選的,包含著不必重新編輯代碼就可以改變的位圖、字符串和其它數據。      ActiveX控件的文件(.ocx)可以添加到工具箱并在窗體中使用。建立一個大型程序時應先設計好代碼的組成結構。如圖所示為某工程的模塊結構,該工程包含三類模塊,即窗體模塊、標準模塊和類模塊。對于簡單程序,通常只有窗體模塊。圖工程中的模塊結構1325工程的管理1 1  創建、打開和保存工程工程文件的操作既可以用菜單中命令也可以用相應的工具欄按鈕來完成。() ()   新建工程和打開工程選擇“文件”菜單“新建

42、工程”命令,系統會提示保存當前工程文件,然后顯示出如圖1-2所示的“新建工程”對話框,選擇“標準.exe”確定后即可新建一個工程,工程的默認文件名為“工程1”。【注意】單擊工具欄上的第一個按鈕即“添加Standard EXE工程”按鈕并不能達到新建工程的目的,單擊該按鈕可創建工程組,即在當前工程中添加一個工程,而不是新建工程。這是初學者很容易犯的一個錯誤。“文件”菜單的“打開工程”命令,可打開一個已存在的工程文件到當前工作區。該命令在工具欄上有相應的工具按鈕,見表1-1。() ()   保存工程和工程另存為選擇“文件”菜單的“保存工程”命令,是以原有的工程文件名存盤,當某工

43、程是第一次被保存時,系統會彈出“文件另存為”對話框,提示用戶輸入文件名來保存此工程。保存工程文件的同時保存與該工程有關的修改過的窗體文件和標準模塊文件。“工程另存為”命令是以規定的工程文件名保存工程,通常用于對已有工程修改后的改名存盤。2 2  添加、刪除和保存文件對于包含多個窗體文件或標準模塊文件的工程,對每個文件都存在著文件的添加、刪除和保存操作,這樣,在保存工程文件之前,應先分別使用“文件”菜單中的“保存Form”或“保存Module”等命令來保存窗體文件和標準模塊文件。窗體文件和標準模塊文件的添加和刪除可以通過“工程”菜單中相應命令來完成。【注意】窗體文件和標準模塊文件既可在

44、VB工程中刪除,也可在VB之外刪除。如果在VB外刪除一個文件,則VB不能更新相應的工程文件,這樣,在打開該工程文件時,將顯示文件丟失的出錯信息。14窗體及常用控件由VB程序設計特點我們可以了解到,用VB來編寫應用程序,控件的屬性及設置非常重要,讀者在學習編程的過程中,一定要注意把握這點。為了后續章節的學習方便,在本小節中將簡單介紹窗體及幾個常用控件的基本屬性,更多的常用控件將在本書的第六章中學習。141窗體及控件的基本屬性根據.2節的知識我們知道,每個對象均有自己的屬性,可以通過屬性窗口看到所選對象的屬性列表及設置值,并可以根據需要在設計階段或編碼階段來改變屬性的值,而當我們改變某個對象的屬性

45、值時,對象的行為和外觀都相應地會有所變化。不同的對象有許多相同的屬性,為介紹的方便,我們把它們稱為“基本屬性”,但讀者請注意,不是所有的對象都具有下面要提到的基本屬性,也不是所有的屬性都可同時在設計階段和編碼運行階段改變和設置。1 1  Name(名稱)屬性所有控件均有名稱屬性,代表所創建對象的名稱,其屬性值將作為控件的標識在程序中被引用。Name屬性只能在設計階段即只能通過屬性窗口來設置或更改,在運行時是只讀的,不能在編碼運行階段(即在代碼中)修改。Name屬性值必須以字母開頭,可以包含字母、數字和下劃線,不能包含標點符號和空格,不能與其它公共對象重名。2 2  Capt

46、ion(標題)屬性為控件上顯示的內容。該屬性既可在設計階段也可在編碼運行階段設置和改變。3 3  Top、Left、Width和Height屬性(Top,Left)是控件或窗體左上角的坐標。對于窗體而言,Top屬性表示窗體到屏幕頂部的距離,Left表示窗體到屏幕左邊的距離,對其它控件,Top屬性表示控件到窗體頂部的距離,Left表示控件到窗體左邊框的距離。(Top,Left)是控件或窗體左上角的坐標,Width和Height屬性分別表示了控件的寬度和高度。VB提供了默認坐標系,窗體的左上角為坐標原點,水平方向向右為正方向,垂直方向向下為正方向,坐標值默認單位是twip,1twip=1

47、/20點=1/1440英寸=1/567厘米。如圖1-10所示為VB的坐標系。圖示中窗體的Caption屬性被設置為“窗體標題顯示”,按鈕的Caption屬性被設置為“按鈕標題顯示”。圖l-10 控件的位置和大小4 4  Font屬性Font屬性改變控件中顯示的文本外觀,通過該屬性能設置FontName(字體),FontSize(字體大小),及一些常用的字體顯示效果如FontBold(粗體),FontItalic(斜體),FontStrikethru(加冊除線),FontUnderline(加下劃線)等。通過單擊選定對象屬性窗口中Font屬性列表的圖標后出現如圖1-11所示Font屬性

48、對話框。在對話框中可完成所需設置。如果用戶所設計的界面中所有控件具有相同的Font屬性,則只需對窗體的Font屬性作設置,窗體內其它控件均服從該屬性,除非用戶再改變某控件的Font屬性值。圖1-11 Font屬性對話框5 5  Enabled屬性該屬性決定程序運行時,控件是否響應用戶的鼠標或鍵盤操作。其屬性值為邏輯類型,即只有以下兩種:True(控件能響應用戶鼠標或鍵盤操作,此值為默認值);False(控件不響應用戶的鼠標或鍵盤操作,并呈暗淡顯示)。【注意】如果將窗體對象的Enabled屬性值設置為False,則該窗體上所有的控件均不響應用戶的操作。6 6  Visible

49、屬性該屬性決定程序運行時控件是否可見。其屬性值為邏輯類型。即:True(控件在程序運行時可見,此值為默認值);False(控件在程序運行時隱藏)。注意:一個Visible屬性設置為False的控件,在設計時仍然是可見的,僅在程序運行時不可見。7 7  AutoSize屬性該屬性決定控件是否能自動調整大小。其屬性值為邏輯類型。即:True(控件能自動調整大小);False(控件保持原設計時的大小,若正文太長,則會被自動裁剪,此值為默認設置值)。8 8  Alignment屬性該屬性決定控件上文本對齊方式。其屬性值有3種:0 Left Justify:顯示的文本信息左對齊,此值

50、為默認設置。1 Right Justify:文本信息右對齊顯示。2 Center:文本居中對齊。9 9  WordWrap屬性僅當AutoSize屬性設置為True時,WordWrap屬性才有效。其屬性值為邏輯類型。True(在垂直方向上改變文本顯示區域的大小,顯示文字換行);False(在水平方向上按正文長度放大和縮小,顯示文字不換行,此值為默認設置值)。10 10              BorderStyle屬性該屬性決定控件有無邊框。其屬性值有2

51、種:0 None:控件無邊框。1 Fixed Single:控件帶有單邊框。【注意】此屬性在程序運行時只讀。上述屬性值和意義僅適于Label,Text,Picture等控件,對于窗體、Line、Shape等控件的BorderStyle屬性有其它不同的值和意義。11 11              ForeColor屬性該屬性用于設置或返回控件的前景(即正文)顏色。其值是一個十六進制常數,如ForeColor設置為&H000000FF&,表示前景為紅色

52、。大多數時候用戶可以通過調色板直接選擇所需顏色。12 12              BackColor屬性該屬性用于設置除正文以外的顯示區域的顏色,其值設置方法和意義同ForeColor屬性。13 13              BackStyle屬性該屬性用于設置背景樣式,其屬性值有2種:0 Transparent:透明樣式。即控件背

53、景顏色顯示不出,若控件后面還有其他控件,則這些控件可以顯示出來。1 Opaque:不透明樣式。此時可為控件設置背景顏色,此值為默認設置值。14 14              MousePointer屬性該屬性用于設置在程序運行時當鼠標移至某一對象的特定部分時所顯示的鼠標指針形狀。設置值為有0,1,215,99共17種選擇,其中,0-15值的含義可通過屬性列表值或幫助系統了解,這里不一一列舉,值為99表示用戶要自定義指針形狀。15 15  

54、60;           MouseIcon屬性僅當MousePointer屬性值為99時,MouseIcon屬性可用。該屬性用于設置用戶自定義的鼠標圖標形狀,文件類型為.ico或.cur。16 16              TabIndex屬性該屬性用于決定用戶按下Tab鍵時,焦點(Focus)在窗體上各個控件移動的順序。焦點表示在任何時間控件接收鼠標輸入或鍵盤

55、輸入的能力,只有當控件具有焦點時,才可以接收用戶的輸入。當窗體上有多個控件時,對大部分控件而言,系統都會分配一個Tab順序,即用戶每按一次Tab鍵焦點在各個控件上移動的順序。通常,系統自動分配的Tab順序總是與設計時控件建立的順序相同,默認第一個建立的控件的TabIndex屬性值為0,第二個為1,以此類推。若要改變這個順序,則可以設置TabIndex屬性。【注意】運行時不可見(Visible屬性為False)或無效(Enable屬性為False)的控件以及一些不能接收焦點的控件(如Frame,Label等),會保持在Tab順序中,但按Tab鍵切換時這些控件會被跳過。17 17 

56、60;            默認屬性在.2節中我們知道,在編碼運行階段可通過語句(格式為:對象.屬性=屬性值)來實現屬性的改變。VB中,反映某個控件最重要的屬性稱為其默認屬性,對默認屬性,語句格式省略為:對象=屬性值。在程序運行時,不必指出是該控件的哪個屬性,可以直接改變控件默認屬性的值。例如,Text1=”hello!”與語句Text1.Text=”hello!”等效。注意,這種省略僅對控件的默認屬性有效。下表1-2列出了部分常用控件的默認屬性,讀者在閱讀他人程序時可能會遇到這種情

57、況,但為保持程序的清晰可讀,建議初學者不要采用省略方式。表1-2 部分控件的默認屬性控件名稱默認屬性控件名稱默認屬性文本框Text單選框Value標簽Caption復選框Value圖形框Picture圖像框Picture【例1.2】在窗體Form1上分別建立兩個命令按鈕command1,command2,各屬性值取默認值;三個標簽Label1、Label2,、Label3,其屬性值通過屬性窗口作如表1-3所示的設置(除表中屬性外,其余均取其默認值)。編寫代碼達到如下效果:運行程序,鼠標形狀發生改變,單擊命令按鈕command1,該按鈕上顯示文字為“粗體刪除線”,文字效果為14鎊大小粗體帶刪除線

58、;command2按鈕上顯示文字為“斜體下劃線”,文字效果為16鎊大小斜體帶下劃線,并不允許操作。其事件過程代碼如下,運行后界面如圖1-12: Private Sub Command1_Click() Command1.Height = 615Command1.Width = 1935Command1.Caption = "´粗體刪除線" Command1.FontBold = True Command1.FontSize = 14 Command1.FontStrikethru = TrueCommand2.Height = 615Command2.Width

59、= 1935Command2.Caption = "斜體下劃線" Command2.FontSize = 16Command2.FontItalic = TrueCommand2.FontUnderline = TrueCommand2.Enabled = False End Sub 表1-3 有關屬性設置控件默認名稱(即Name屬性)其 它 屬 性 及 其 值 的 設 置Form1Backcolor=&H00808080&(或用調色板選擇深灰色)Mousepointer=99,MouseIcon=c:windowscursor3dwmove.icoLabe

60、l1Caption=“左對齊”,Alignment=0,Height=735,Width=1095Label2Caption=“右對齊”,Backcolor=&H000080FF&(或用調色板選擇桔紅色)Alignment=1,Borderstyle=1, Height=735,Width=1095Label3Caption=“居中對齊”,Alignment=2, Height=735,Width=1095圖1-12 【例1.2】運行效果圖142常用控件本小節僅介紹幾個常用控件,其它更多控件將在第六章中介紹。1窗體(Form)窗體(Form)作為各種控件的容器,在整個應用程序中起著重要的作用。VB中每個窗體對應于程序運行時的一個窗口。(1)窗體的屬性窗體的常用屬性有上節中介紹過的Name,Caption,Enabled,Visible,Left,Top,Height,Width,Font,Forecolor,Backcolor,Mousepointer,MouseIcon外,還有一些建立用戶界面時常用到的重要屬性。MaxButton屬性和MinButton屬性這兩個屬性分別決定了窗體標題欄右上角的最大化按鈕和最小化按鈕是否可用。      MaxButton屬性為True,有最大

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論