程序設(shè)計(jì)基礎(chǔ)新教材備課筆記07秋董琴打印稿_第1頁
程序設(shè)計(jì)基礎(chǔ)新教材備課筆記07秋董琴打印稿_第2頁
程序設(shè)計(jì)基礎(chǔ)新教材備課筆記07秋董琴打印稿_第3頁
程序設(shè)計(jì)基礎(chǔ)新教材備課筆記07秋董琴打印稿_第4頁
程序設(shè)計(jì)基礎(chǔ)新教材備課筆記07秋董琴打印稿_第5頁
已閱讀5頁,還剩71頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、PAGE 程序設(shè)計(jì)基礎(chǔ)(VB)備課筆記PAGE - PAGE 75 -程序設(shè)計(jì)基礎(chǔ)備課筆記董 琴鹽城工學(xué)院第1章Visual BASIC導(dǎo)論教學(xué)目的與要求:1.了解Visual Basic的平臺環(huán)境及主要特點(diǎn)。2. 掌握Windows程序的界面及事件驅(qū)動方式應(yīng)用程序的設(shè)計(jì)原理。3. 掌握VB是采用的面向?qū)ο蟪绦蛟O(shè)計(jì)方法,對象、屬性、方法概念的理解。4. 掌握建立Visual Basic應(yīng)用程序的一般步驟。重點(diǎn)與難點(diǎn):1. 面向?qū)ο蟮某绦蛟O(shè)計(jì)方法的基本概念:對象、屬性、方法、事件。2. 事件驅(qū)動過程的程序設(shè)計(jì)的基本原理。3. 掌握Visual Basic的集成開發(fā)環(huán)境與基本操作。4. 掌握創(chuàng)建V

2、isual Basic應(yīng)用程序的一般步驟。1.1 Visual BASIC與Windows “Visual”指的是開發(fā)圖形用戶界面的方法,不需要編寫大量的代碼去描述界面元素的外觀、位置,而只要把預(yù)先建立的對象拖到屏幕上的一點(diǎn)即可?!癇ASIC”(Beginners All-Purpose Symbolic Instruction Code)語言是一種在計(jì)算技術(shù)發(fā)展歷史上應(yīng)用最為廣泛的語言。引進(jìn)了新的程序設(shè)計(jì)方法面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOPObject-Orient Program)方法。VB是開發(fā)和創(chuàng)建Windows平臺下具有圖形用戶界面應(yīng)用程序的工具。VB的發(fā)展:VB 1.0(1990 Mic

3、rosoft)VB 2.0VB 3.0VB 4.0VB 5.0VB 6.0,目前最高版本為VB6.0。VB4.0有跨平臺的編程功能:既用于16位平臺,又用于32位平臺;VB5.0、VB6.0只能用于32位平臺。VB的不同版本:標(biāo)準(zhǔn)版(學(xué)習(xí)版)、專業(yè)版和企業(yè)版1.2 Windows程序:界面與事件驅(qū)動Windows程序的工作模式(完全取決于操作者)事件或消息驅(qū)動方式。事件:使某個對象進(jìn)入活動狀態(tài)(又稱激活)的一種操作或動作。為了便于初學(xué)者理解,事件的概念也可以這樣來定義:使對象動作起來的動作。例如:一只白色的足球被踢飛進(jìn)球門,在這句話中,對象:足球,屬性:白色,方法:飛,事件:踢在VB中事件的格

4、式如下: Sub 對象名_事件名(參數(shù)) 事件響應(yīng)的程序代碼 End Sub 用一個“事件”激活某個對象,隨著該對象的活動,會產(chǎn)生新的“事件”,這個事件又可能使另一個對象激活,對象之間就是以這種方式聯(lián)系在一起的。 過程(procedure):通過編寫程序代碼段,為對象規(guī)定在被某個“事件“激活時應(yīng)發(fā)生的各種動作以及所要進(jìn)行的信息處理的具體內(nèi)容,這樣的代碼段。 為各個對象編寫的過程集合在一起,就構(gòu)成一個完整的應(yīng)用程序。這就是事件驅(qū)動方式的應(yīng)用程序的設(shè)計(jì)原理。對象、屬性與方法面向?qū)ο蟮某绦蛟O(shè)計(jì)思想:面向?qū)ο蟮某绦蛟O(shè)計(jì)思想是對現(xiàn)實(shí)世界的更精確的反映。1對象及其對象類 對象(Object):動作體的邏輯

5、模型。在VB 中,對象就是可控制的某種東西。如:窗體、控件等對象類:是對象的正式定義。窗體(Form):在VB中,把這種窗口的界面稱之為窗體。它是一種對象,由屬性定義其外觀,由方法定義其行為,由事件定義其與用戶的交往。窗休是存放其它控件的容器(container)。控件(Control):是可放置在窗體上的對象。每種控件都有自己的屬性、方法、事件。2屬性 屬性:是對對象特性的描述。屬性定義對象的大小、色彩、屏幕位置或?qū)ο鬆顟B(tài)等特征,也定義有效或無效之類的特征。 屬性的設(shè)置:(1)設(shè)計(jì)時改變對象的屬性,可在屬性窗口直接設(shè)置。 (2)運(yùn)行時改變對象的屬性,則要通過代碼進(jìn)行設(shè)置。其格式: 對象名.屬

6、性名=屬性值 例如: label1.caption=”你好!”注意:大多數(shù)屬性既可以在屬性窗口中設(shè)置,也可在運(yùn)行時設(shè)置,但有些屬性只能在設(shè)計(jì)時設(shè)置(通常稱為設(shè)計(jì)屬性),有些屬性只能在運(yùn)行時改變(通常稱為運(yùn)行屬性)。3方法方法指的是控制對象動作行為的方式。應(yīng)用軟件可以通過調(diào)用對象方法來控制對象工作。為了便于理解,方法的概念也可以這樣來定義:對象本身的動作。其格式:對象名.方法名 參數(shù) 例如:Form1.show Form1.Print 20,40一個Windows程序示例一、Visual Basic 的開發(fā)環(huán)境 VB6.0的啟動和退出。特別是第一次啟動時出現(xiàn)的界面。 VB集成開發(fā)環(huán)境(IDE)的

7、主畫面:由標(biāo)題條、菜單、彈出式菜單(上下文菜單)、工具欄、控件工具箱、初始窗體和工程資源管理器子窗口、屬性子窗口、窗體布局子窗口等組成。建立一個工程:在VB中,創(chuàng)建一個應(yīng)用程序。1標(biāo)題條顯示正在開發(fā)或調(diào)試的工程名。顯示系統(tǒng)的工作狀態(tài):設(shè)計(jì)時或設(shè)計(jì)態(tài)(Design-time)、運(yùn)行時或運(yùn)行態(tài)(Run-time)、中止態(tài)(Break)。2菜單條3工具欄4窗體設(shè)計(jì)器 初始窗體5控件箱6彈出式菜單7工程資源管理器窗口和代碼編輯器窗口“工程資源管理器窗口”又稱“工程瀏覽器窗口”,在窗口中列出當(dāng)前窗口的所有窗體和模塊。“工程瀏覽器窗口”有一個小工具欄,有三個按鈕:查看對象、查看代碼和切換目錄。“代碼編輯器

8、窗口”是輸入應(yīng)用程序代碼的窗口。有兩個列表框:“對象列表框”和“事件列表框”。8“屬性”窗口“屬性”窗口由標(biāo)題條、“對象”列表框和“屬性”列表框及屬性說明幾個部分組成?!皩傩浴贝翱谥性O(shè)有“按字母”和“按分類”兩個選項(xiàng)卡。9“窗體布局”窗口10“立即”、“本地”和“監(jiān)視”窗口這些附加窗口是為調(diào)試應(yīng)用程序提供的。11對象瀏覽器對象瀏覽器可列出工程中有效的對象,并提供在編碼中漫游的快速方法。創(chuàng)建Visual BASIC應(yīng)用程序的一般步驟創(chuàng)建程序的用戶界面設(shè)置界面上各個對象的屬性編寫對象響應(yīng)事件的程序代碼1創(chuàng)建程序的用戶界面窗體是創(chuàng)建應(yīng)用程序的基礎(chǔ)。建立VB 應(yīng)用程序的第一步就是創(chuàng)建一個窗體,其次是在

9、窗體上放置構(gòu)成界面的各種對象。(1)用工具箱繪制控件(2)調(diào)整控件的尺寸(3)移動控件(4)鎖定所有控件位置(5)調(diào)節(jié)鎖定控件的位置:Ctrl+箭頭鍵2設(shè)置界面上各個對象的屬性在程序代碼中設(shè)置屬性;在屬性窗口中直接設(shè)置(最方便):(1)顯示屬性窗口的方法有:在“視圖”菜單中選擇“屬性窗口”命令單擊工具欄上的“屬性窗口”按鈕使用控件的上下文菜單(2)在“屬性窗口”中設(shè)置屬性的步驟:在“視圖”菜單中選擇“屬性窗口”命令,單擊工具欄上的“屬性窗口”按鈕,此時“屬性窗口”顯示了窗體或控件的屬性設(shè)置在屬性列表中,選擇屬性名在右邊一列中選擇或輸入屬性的新值。3編寫對象響應(yīng)事件的程序代碼通過“代碼編輯器”進(jìn)

10、行。4保存工程窗體文件(.Frm或.Frx)、工程文件(.Vbp)、標(biāo)準(zhǔn)模塊文件(.Bas)、可執(zhí)行文件(.EXE)5測試和調(diào)試應(yīng)用程序,檢查并排除程序中的錯誤6創(chuàng)建可執(zhí)行程序VB的應(yīng)用程序由兩大部分組成:與用戶進(jìn)行交互的窗體(窗體上安排有控件、菜單等等)即程序的用戶界面;用于響應(yīng)各種事件及對輸入的數(shù)據(jù)進(jìn)行所需處理的程序代碼。Visual BASIC集成開發(fā)環(huán)境的基本操作例1-1 在窗口中有一行字:“你好!”和一個命令按鈕。用鼠標(biāo)單擊命令按鈕,窗口中的文字就會自動變成“歡迎學(xué)習(xí)VB!”。1啟動VB,開始新工程2創(chuàng)建用戶界面3加入程序代碼Private Sub Command1Click Lab

11、el1.Caption=”歡迎學(xué)習(xí)VB!”End Sub4保存工程文件5運(yùn)行及調(diào)試程序6生成可執(zhí)行程序7打印窗體和代碼8使用幫助第2章 程序設(shè)計(jì)與算法(問題求解)教學(xué)目的與要求:1. 掌握程序的基本組成:輸入、處理與輸出。2. 掌握程序設(shè)計(jì)的一般步驟。3. 掌握算法的描述和算法的三種基本結(jié)構(gòu)。重點(diǎn)與難點(diǎn):1.程序設(shè)計(jì)的一般步驟。2. 算法的概念及特征。3. 算法的描述及算法的三種基本結(jié)構(gòu)。2.1 程序的基本組成:輸入、處理與輸出2.1.1 計(jì)算機(jī)解題示例2 .1.2 程序設(shè)計(jì)的一般步驟分析:問題定義設(shè)計(jì):計(jì)劃解題選擇與創(chuàng)建界面:選擇和確定界面對象編碼:用程序設(shè)計(jì)語言描述算法測試與調(diào)試:查找并排

12、除程序中的任何錯誤完成文檔:整理和組織描述程序的所有資料2.2 算法與編程工具在設(shè)計(jì)程序前,根據(jù)實(shí)際問題的特點(diǎn)、需求和計(jì)算機(jī)的特性確定解決某個問題所需要的方法和步驟,這一工作,通常稱為“算法設(shè)計(jì)”。算法的概念廣義而言,算法就是解決某個問題或處理某件事的方法和步驟。狹義而言,算法專指用計(jì)算機(jī)解決某一問題的方法和步驟。計(jì)算機(jī)算法可以分為兩大類:一類是數(shù)值計(jì)算算法;另一類是非數(shù)值計(jì)算算法。研究解決各種特定類型問題的算法已成為一個稱為“計(jì)算方法”的專門學(xué)科。評價一個算法的好壞優(yōu)劣,一般而言,主要看算法是否正確、運(yùn)行的效率及占用系統(tǒng)資源的多少等。算法示例求兩個自然數(shù)的最大公約數(shù)的算法。S1. 輸入兩個自

13、然數(shù)M、NS2. 求M除以N的余數(shù)RS3. 使M=N,即用N 代替MS4. 使N=R,即用R 代換NS5. 若R0,則重復(fù)執(zhí)行S2,S3,S4(循環(huán)),否則轉(zhuǎn)S6。S6.輸出M,M即為M和N的最大公約數(shù)。本算法稱為“歐幾里德算法”例2 在N個字符串?dāng)?shù)據(jù)集合中,查找有無特定的字符存在。S1. 輸入字符串?dāng)?shù)據(jù)的個數(shù)N和要查找的字符串SS2. 使I=1,I用于記數(shù)S3. 從字符串?dāng)?shù)據(jù)集合中讀取一個字符串XS4. 若X=S,輸出“找到S”信息,算法結(jié)束,否則轉(zhuǎn)S5S5. 使I=I+1,計(jì)數(shù)器記數(shù)S6. 若IN,則重復(fù)執(zhí)行S3、S4、S5(循環(huán)),否則轉(zhuǎn)S7S7. 輸出“找不到S”信息,算法結(jié)束本算法也

14、稱為“順序查找算法”算法的特征確定性可行性有窮性輸入性輸出性算法的描述算法可以采用多種方式來表示,如:自然語言、代碼符號或特定的圖形等。用于描述算法的圖形使用較多的是所謂的流程框圖,簡稱流程圖。流程圖使用的圖形符號: 圖形符號 名稱 代表的操作輸入/輸出數(shù)據(jù)的輸入與輸出處理各種形式的數(shù)據(jù)處理判斷判斷選擇,根據(jù)條件滿足與否選擇不同路徑起止流程的起點(diǎn)與終點(diǎn)特定過程一個定義過的過程流程線連接各個圖框,表示執(zhí)行順序連接點(diǎn)表示與流程圖其它部分相連接算法僅僅提供了解決某類問題可采用的方法和步驟,還必須計(jì)算機(jī)程序設(shè)計(jì)語言把算法描述出來。也就是說,要使用某一種程序設(shè)計(jì)語言所提供的語言成分,根據(jù)語言的特點(diǎn),并利

15、用語言提供的各種工具和手段,遵照規(guī)定的語法規(guī)則,去實(shí)現(xiàn)算法,這就是所謂的程序編碼。例1與例2的程序流程圖如下圖: 開始 開始輸入N與S輸入M、N I=1求R=M MOD N 讀X M=NX=S 是 N=R 輸出找到S I=I+1R0 是I=N 是輸出M輸出找不到 結(jié)束 結(jié)束基本算法結(jié)構(gòu)結(jié)構(gòu)化程序設(shè)計(jì)方法:其核心是規(guī)定了算法的三種基本結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu): 分支結(jié)構(gòu):每個處理(A和B)順序執(zhí)行。 其中e為判決條件,進(jìn)入分支結(jié)構(gòu), 首先判斷e 成立與否,再根據(jù)判斷結(jié)果, 選擇執(zhí)行處理A或者處理B后退出。True Falsee A TTT B A B循環(huán)結(jié)構(gòu):循環(huán)結(jié)構(gòu)的處理A

16、是要重復(fù)執(zhí)行的操作,叫做“循環(huán)體”;e是控制循環(huán)執(zhí)行的條件。當(dāng)型循環(huán): 直到型循環(huán):“當(dāng)”條件e成立(即為True), 重復(fù)執(zhí)行A,“直到”條件e成立(即就繼續(xù)執(zhí)行A,否則(即條件為False) 為True),循環(huán)結(jié)束。就結(jié)束循環(huán)。 False True TrueFalse A A e e TT 圖(5) 圖(6)第3章 常用控件與界面設(shè)計(jì)教學(xué)目的與要求:1. 掌握窗體的屬性、方法與事件。2. 掌握窗體的顯示、隱藏、裝載和卸載的方法。3. 掌握Print方法的使用。4. 掌握常用控件的屬性、方法與事件。5. 了解菜單的概念與菜單編輯器的使用。重點(diǎn)與難點(diǎn):1. 窗體的屬性、方法與事件。2. 窗體

17、屬性的兩種定制方法。3.文本框、標(biāo)簽、命令按鈕的屬性、方法與事件。4.列表框、組合框的屬性、方法與事件。5. 圖像控件、圖片框控件的屬性、方法與事件。6. 選項(xiàng)按鈕、復(fù)選框與框架的屬性、方法與事件。7. 滾動條、計(jì)時器的屬性、方法與事件。8. 菜單編輯器的使用3.1創(chuàng)建窗體窗體是VB最重要的對象,它是包容程序窗口或?qū)υ挻翱谒璧母鞣N控件對象的容器。VB為窗體規(guī)定了眾多的屬性、方法和事件。下面介紹窗體常用的屬性、方法和事件。屬性在創(chuàng)建工程時,VB在窗體設(shè)計(jì)器自動加入一個空白窗體,VB為這個窗體設(shè)置缺省屬性 ,用戶也可以設(shè)置新的屬性值來改變窗體的外觀和行為。窗體的主要屬性如下:屬性名意義要求Nam

18、e窗體名稱系統(tǒng)為應(yīng)用程序的第一個窗體缺省命名為Form1:名稱屬性在程序代碼中被作為對象的標(biāo)識名;在自行命名窗體時,一個窗體名必須以一個字母開頭,可包含數(shù)字和下劃線,但不能包含空格和標(biāo)點(diǎn)符號。Caption窗體標(biāo)題是出現(xiàn)在窗體標(biāo)題欄的文本內(nèi)容;缺省名使用窗體名;它和窗體名是不同的。BackColor窗體背景色ForeColor窗體前景色BorderStyle窗體邊框風(fēng)格設(shè)定值、相關(guān)的VB內(nèi)部常量及不同風(fēng)格見P.20Enabled活動屬性缺省值為“True”;當(dāng)設(shè)置為“False”時,窗口將不能被訪問。Visible可見屬性缺省值為“True”;當(dāng)設(shè)置為“False”時,窗口將不可見。Font字

19、體屬性調(diào)用語法為:Object.FontLeft、Top窗體的位置Left和Top是窗體左上角的坐標(biāo)。HeightWidth窗體的大小Height和Width是窗體的高度和寬度。Picture圖形屬性返回或設(shè)置對象中的圖形窗體方法意義說明Hide隱藏方法Form1.HideMove移動方法Form1.Move 40 60Print打印方法重點(diǎn)內(nèi)容,后面講述PrintForm打印窗體方法窗體名.PrintFormCls清除方法Form1.ClsShow顯示方法Form1.Show2. 方法事件窗體事件意義與說明Click單擊事件DblClick雙擊事件Load裝載事件Resize在窗體被改變大小

20、時,會觸發(fā)本事件Activate激活事件,當(dāng)窗體變?yōu)楫?dāng)前窗口時,引發(fā)本事件Deactivate失去激活事件,當(dāng)窗體失去激活狀態(tài),即另一個窗體成為當(dāng)前窗口時,引發(fā)本事件。3.1.1 定制窗體屬性方法有兩種:一是在設(shè)計(jì)態(tài)通過“屬性”窗口為其設(shè)定各種屬性值;二是在程序代碼中改變屬性值。注意:1.在屬性窗口列出的屬性中大多數(shù)可采用系統(tǒng)缺省值。 2.在程序代碼中則使用如下格式的代碼來改變屬性值: Object.Property=Expression式中:Object是對象名,Property是屬于該對象的某個屬性名,Expression是為該屬性賦予的值。例:Label1.Caption=”計(jì)算機(jī)基礎(chǔ)中

21、心”; Form1.Caption=“運(yùn)行示例”; Label1.Font.Size=16 3.一個應(yīng)用程序通常包含多個窗體3.1.2 窗體的顯示、隱藏、裝載和卸載窗體的顯示與隱藏在程序代碼中,使用Show和Hide方法可以顯示與隱藏窗體。方法可使對象執(zhí)行一個動作或任務(wù)。使用方法的格式: Object.Method 或 Object.Method Arg1,Arg2后一種方法是帶有參數(shù)的方法。顯示窗體:Form1.Show StyleShow方法的Style 參數(shù)決定窗體是有模式的(VBModel)還是無模式的(VBModeless)。隱藏窗體:Form1.Hide裝載窗體和Load事件裝載語

22、句的格式:Load Object 可把窗體(或其他對象)載入內(nèi)存,但并不顯示它。系統(tǒng)自動裝載窗體時,將引發(fā)窗體的Load事件;在使用Show方法顯示窗體時,也會自動將尚未載入內(nèi)存的窗體裝入內(nèi)存,并引發(fā)窗體的Load事件。卸載窗體和Unload事件卸載語句的格式:Unload Object 可把窗體(或其他對象)從內(nèi)存卸載,使該對象的所有屬性重新恢復(fù)為設(shè)計(jì)時設(shè)定的初始值,卸載還將引發(fā)對象的Unload事件。如果卸載的對象是程序唯一的窗體,則將終止程序的運(yùn)行。End語句格式: End 執(zhí)行該行語句將終止應(yīng)用程序的執(zhí)行,并從內(nèi)存卸載所有窗體。例3-1 設(shè)程序窗體Form1上有一個“關(guān)閉”按鈕(名稱屬

23、性為CmdClose),單擊該按鈕將窗體卸載,如前所述,此時將引發(fā)卸載事件。在響應(yīng)事件的代碼中也可使用End語句,以此來控制程序的結(jié)束。Sub CmdClose-Click Unload Me Me是系統(tǒng)的保留字,代表當(dāng)前窗體End SubSub Form1-Unload 程序結(jié)束前,需要執(zhí)行的代碼 EndEnd Sub3.1.3 Print方法用途:將文本輸出到屏幕上或輸出到打印機(jī)上。如果Print方法不帶有控件對象名時,它將把輸出內(nèi)容輸出到當(dāng)前窗體上。格式:對象名.Print 輸出項(xiàng)1,|;輸出項(xiàng)2,|;其中:對象名是當(dāng)前窗體,可缺省,對象名可以是:窗體(Form)、圖片框(Picture

24、Box)、立即窗口(Debug)、打印機(jī)(Printer)。當(dāng)采用逗號作分隔符時,稱之為標(biāo)準(zhǔn)格式,每個輸出項(xiàng)將分別輸出到相應(yīng)分區(qū),每個分區(qū)的長度為14列;而采用分號作為分隔符時,稱之為緊湊格式,兩個輸出項(xiàng)緊接著輸出。然而對于數(shù)字,每個數(shù)字后面總會帶有一個尾隨空格,以便把相鄰的兩個數(shù)分開,對于正數(shù),其符號位也占據(jù)一個空格。如果行末帶標(biāo)點(diǎn)符號,則下一個Print中的輸出項(xiàng)緊接著上一行末尾輸出。Private Sub Form_Click() Print 1;-2;3;-4;5 Print 1;-2;3; Print 4;5End SubPrivate Sub Form_Click() Dim X

25、as Integer,Y as Integer X=2:Y=-3Print “X=”;X, ”Y=”;YEnd SubOption ExplicitPrivate Sub Form_Click() Print 1,-2,3,-4,5End SubPrivate Sub Form_Click() Print 1;-2;3;-4;5End Sub3.2 Visual Basic的常用控件3.2.1 概述所有的Windows應(yīng)用程序窗口或?qū)υ捒?,都是由文本框、列表框、命令按鈕、滾動條、命令菜單等組成。VB通過控件工具箱提供了這些與用戶進(jìn)行交互的可視化部件,即控件。標(biāo)準(zhǔn)控件分類:控件名稱 用 途文字顯

26、示控件主要用于在應(yīng)用程序中各種用戶信息和輸入輸出。包括“Label(標(biāo)簽)”控件、“TextBox(文本框)”控件、“ListBox(列表框)”控件和“ComboBox(組合框)”控件。按鈕控件主要用于鼠標(biāo)單擊時執(zhí)行各種操作。包括“CommandButton(命令)”控件,“CheckBox(復(fù)選框)”控件和“OptionButton(選項(xiàng)按鈕)”控件。文件系統(tǒng)控件主要用于對計(jì)算機(jī)硬盤中的文件進(jìn)行管理。包括“DriveListBox(驅(qū)動器列表框)”控件,“DirListBox(文件夾列表框)”和“FileListBox(文件列表框)”控件。圖形處理控件主要用于對圖形文件和窗體中各種圖形的處理

27、。包括“Image(圖像)”控件,“PictureBox(圖片框)”、“Shape(圖形)”和“Line(線條)”控件。容器控件用于提供可視化容器和對象的嵌入。“Frame(框架)”和“OLE”控件滾動條控件主要用于不能自動提供滾動條的控件。有“H.ScrollBar(水平滾動條)”控件和“V.ScrollBar(垂直滾動條)”控件時鐘控件主要用于有規(guī)律的定時觸發(fā)事件。“Timer(計(jì)時器)”控件。3.2.2常用控件1.文本框(TextBox)作用:用于接受用戶在框內(nèi)輸入的信息,或顯示由程序提供的信息。文本框的主要屬性:Name(文本框名稱)缺省值為Text1,Text2等;在運(yùn)行時是只讀的。

28、Text(文本屬性)返回或設(shè)置編輯區(qū)中的文本;缺省值是Text1,Text2等。PasswordChar(口令屬性)密碼替換符;如果該屬性的值為某個字符(例如*),則表示文本框用于輸入口令,在輸入口令時,文本框不會輸入具體的內(nèi)容,只會顯示*。MaxLength(最大長度屬性)設(shè)置文本框內(nèi)文本的最大長度;缺省值是0,表示文本可接受任意個字符的長度。MultiLine(多行屬性)設(shè)置是否允許存放多行文本。屬性值為“True”,可輸入多行文本,缺省值“False”。Alignment(對齊屬性) 設(shè)置文本框中文本的對齊格式。數(shù)值量: 0=(缺省值)左對齊;1=右對齊;2=文本居中TabStop(【T

29、ab】鍵屬性)是否可使用【Tab】鍵來切換當(dāng)前操作對象(即某個對象獲得焦點(diǎn));使用:True(缺省值),不使用:False。其他Font、ForeColor、Enable、BorderStyle、Left、Top|、Height、Width方法:Refresh:刷新SetFocus:設(shè)置焦點(diǎn)事件:Change:在文本框的Text屬性值,即文本的內(nèi)容發(fā)生變化時,就引發(fā)本事件。KeyPress:在文本框中有按鍵時,就引發(fā)本事件。標(biāo)簽(Label)作用:主要用于在窗體上增加文字說明,在運(yùn)行期間用戶不可以改變這些文本。標(biāo)簽的主要屬性: 屬 性 意 義Name(標(biāo)簽名稱)默認(rèn)的名稱為Label1,Lab

30、el2等Caption(標(biāo)題屬性)用途:決定顯示在標(biāo)簽中的文本;語法:Object.Caption=string;也可在屬性中設(shè)置。默認(rèn)的標(biāo)題為Label1,Label2等。Alignment(對齊屬性)設(shè)置標(biāo)題文本的對齊格式。數(shù)值量: 0=(缺省值)左對齊;1=右對齊;2=文本居中。Autosize(大小自適應(yīng)屬性)決定控件是否能根據(jù)內(nèi)容改變大小。BackStyle(背景樣式屬性)指定標(biāo)簽控件是透明還是不透明的。數(shù)值量:0=透明的;1=不透明的(缺省值)。其他Font、ForeColor、BackColor、Left、Top|、Height、Width方法:Refresh(刷新) Objec

31、t.RfreshMove(移動) Object.Move 50,50 事件:Click(單擊) Private Sub Label2_Click()DblClick(雙擊) 命令按鈕(CommandButton)作用:用戶單擊按鈕時,系統(tǒng)自動調(diào)用它的Click事件,完成一定的任務(wù)。當(dāng)用戶單擊這種控件時,視覺上有一個被按下又彈起來的過程,因此稱為命令按鈕。屬性:屬性名稱意義Caption(標(biāo)題屬性)它的取值就是顯示在按鈕上的文字。Cancel(取消屬性)本屬性值設(shè)為“True”時,按ESC鍵等于單擊此按鈕。缺省值為“False”Default(缺省屬性)本屬性值設(shè)為“True”時,本按鈕設(shè)置為焦

32、點(diǎn) ,按回車鍵鍵等于單擊此按鈕。缺省值為“False”Enabled (活動屬性)當(dāng)屬性為“真”時,可操作;否則將變灰,不可操作。Style與Picture(樣式與圖片屬性)命令鈕的外觀樣式。0-(缺省值)標(biāo)準(zhǔn)的Windows 樣式;1圖形樣式,允許在命令鈕上放置圖片,并且BackColor、ForeColor有用。方法:SetFocus:設(shè)置焦點(diǎn)。設(shè)置為焦點(diǎn)的按鈕將有一個邊框,可直接按回車鍵,執(zhí)行該按鈕所代表的動作。事件:Click列表框(ListBox)作用:為用戶提供選項(xiàng)列表,用戶可以從中選一個或多個項(xiàng)目。如果項(xiàng)目數(shù)目超過列表框可顯示的數(shù)目,控件上將自動出現(xiàn)滾動條,這時,用戶可以在列表中

33、上下、左右自由滾動列表框。屬性:Name(名稱屬性)缺省值為:List1,List2等。List(表屬性)用于保存列表內(nèi)容。也可以使用以下形式訪問表列:對象名.List(列表項(xiàng)序號);List(0)指向第一項(xiàng)ListCount(列表項(xiàng)數(shù)目)列表框中所含項(xiàng)的總數(shù)。ListIndex(列表項(xiàng)索引)其值為最后選中的列表項(xiàng)序號,第一列表項(xiàng)的序號為0,第二列表項(xiàng)的序號為1,如果未選任何表項(xiàng),則其值未-1。Text(列表項(xiàng)正文)其值為最后選中的列表項(xiàng)的文本,它與List(ListIndex)相同。Columns(列表框顯示形式)指定列表框中的各項(xiàng)是在一列中垂直滾動,還是在多列中水平滾動;0-在一列中垂直滾

34、動,1-在多列中水平滾動Sorted(排序?qū)傩裕┤≈禐椤癟rue”時,各列表項(xiàng)將按ASCII代碼排序;缺省值為“False”方法:AddItem:添加列表項(xiàng)。格式:Object.AddItem,插入位置序號 若不指定插入位置,則插入到列表末尾。Clear:刪除列表所有項(xiàng)目。RemoveItem:刪除列表項(xiàng)。格式:Object.RemoveItem 刪除項(xiàng)序號事件:Click、Dblclick圖像控件(Image)和圖片框(PictureBox)圖像控件:用于顯示一個圖形,顯示位圖文件(.bmp)或圖標(biāo)文件(.ico)。隨意調(diào)整圖形的大小。設(shè)計(jì)時只需在控件的“屬性”窗口中選擇“Picture”屬

35、性,或在運(yùn)行時使用“Picture”屬性和“LoadPicture”方法就可將圖形加載到“圖像”控件中,代碼如下:Image.Picture=LoadPicture(圖形文件名) 當(dāng)向圖像控件中加載圖片時,控件能夠自動調(diào)整大小以適應(yīng)圖片,也可以在設(shè)計(jì)時,調(diào)整圖像控件的大小,設(shè)置“Stretch”屬性決定是否使圖片伸縮。圖片框控件不僅可以顯示圖形和文本,還可用于創(chuàng)建動畫圖形。圖像和圖片框控件可響應(yīng)的事件與窗體基本相同;圖像和圖片框控件的方法主要有Cls和Refresh等??墒褂脠D片框控件的Print方法在圖片框中顯示文本或處理數(shù)據(jù)的結(jié)果。如:使用名為Pic1的圖片框控件顯示“學(xué)習(xí)VB”文字,代碼

36、如下:Pic1.Print “學(xué)習(xí)VB”。CLS方法用于清除圖片框顯示的文字或圖形。6選項(xiàng)按鈕(OptionButton)、復(fù)選框(CheckBox)、框架控件(Frame)(1)選項(xiàng)按鈕(OptionButton)作用:用于一組互斥的選項(xiàng)中,選取其一,在任一刻,只有一個選項(xiàng)按鈕處于被選狀態(tài)。屬性:屬性意義Name(名稱屬性)缺省的名稱為Option1,Option2等。Caption(標(biāo)題屬性)缺省標(biāo)題為“Option1”,“Option2”等。Value(值)選中與否的標(biāo)記。邏輯量:“True”表示該選鈕被選中,“False”(缺省值)。事件:Click(2)復(fù)選框(CheckBox)作用

37、:從一組可選項(xiàng)中同時選擇多個選項(xiàng)。屬性:屬性意義Name(名稱屬性)缺省的名稱為Check1,Check2等。Caption(標(biāo)題屬性)缺省標(biāo)題為“Check1”,“Check2”等。Value(值)選中與否的標(biāo)記。數(shù)值量:1-表示該復(fù)選框被選中,0(缺省值)。2表示變灰,暫時不能訪問。事件:Click (3)框架控件(Frame)作用:常用作其他控件的容器??蓮墓δ苌习言谄浞秶畠?nèi)的相關(guān)控件組織在一起,在窗體上創(chuàng)建若干個選項(xiàng)組。屬性:屬性意義Name(名稱屬性)缺省名稱為:Frame1,F(xiàn)rame2等。Caption(標(biāo)題屬性)缺省的標(biāo)題為:“Frame1”,“Frame2”等。在窗體上創(chuàng)建

38、選項(xiàng)組的操作步驟如下:在窗體上首先必須創(chuàng)建框架,設(shè)置框架的Caption屬性,注意框架的標(biāo)題出現(xiàn)在框架的邊框上。在框架內(nèi)創(chuàng)建選項(xiàng)按鈕組(或復(fù)選框組),如果移動框架的位置,創(chuàng)建好的選項(xiàng)組將跟隨框架一起移動?!白煮w”程序的屬性設(shè)置7計(jì)時器(Timer)計(jì)時器控件可以通過設(shè)置時間間隔,當(dāng)經(jīng)過設(shè)定的時間后,隨著引發(fā)的Timer事件,有規(guī)律地執(zhí)行Timer事件過程中的程序代碼。運(yùn)行時計(jì)時器不可見。屬性:Interval:時間間隔屬性,單位為千分之一秒。 Enabled:活動屬性,取值為“True”和“False”。事件:只有一個Timer事件。3.3制作菜單作用:命令菜單列出了程序的各種操作命令;工具欄

39、為用戶提供執(zhí)行命令的便捷操作;狀態(tài)欄主要用于顯示程序的運(yùn)行狀態(tài)。3.3.1 菜單概述菜單條菜單菜單項(xiàng)子菜單彈出式菜單3.3.2 使用菜單編輯器窗體上的菜單是通過菜單編輯器創(chuàng)建的。使用“工具”菜單中的“菜單編輯器”命令或單擊VB窗口工具欄上的“菜單編輯器”按鈕,屏幕上出現(xiàn)“菜單編輯器”對話框。對話框中各個項(xiàng)目的意義和功能如下:(1)“標(biāo)題”文本框:用以輸入菜單標(biāo)題或菜單命令的名稱,這些名字將出現(xiàn)在菜單條或菜單之中。在菜單的兩個命令項(xiàng)之間加一條分隔線,可在標(biāo)題文本框中鍵入一連字符;如果想要通過鍵盤訪問菜單,可在標(biāo)題名稱中某個字母前插入&符號。(2)“名稱”文本框:(3)“索引”文本框(4)“快擊鍵

40、”列表框(5)“幫助上下文ID”文本框(6)“協(xié)調(diào)位置”“菜單編輯器”對話框還有四個復(fù)選框,用以設(shè)置菜單對象有關(guān)的屬性值;(1)“復(fù)選”(Checked屬性):(2)“有效”(Enabled屬性):(3)“可見”(visible屬性):(4)“顯示窗口列表”(WindowList屬性):在“菜單編輯器”對話框中還有四個箭頭按鈕:(1)“左箭頭”與“右箭頭”按鈕:(2)“上箭頭”與“下箭頭”按鈕:還有“菜單列標(biāo)框”、“插入”、“下一個”、“刪除”等。第4章 數(shù)據(jù)、表達(dá)式與簡單程序設(shè)計(jì)教學(xué)目的與要求:1. 掌握Visual Basic程序代碼的組織方式。2. 掌握Visual Basic程序代碼行

41、的書寫規(guī)則。3. 掌握Visual Basic的數(shù)據(jù)類型。4. 掌握Visual Basic的運(yùn)算符及其表達(dá)式使用5. 掌握賦值語句的正確使用。6. 掌握常用算術(shù)函數(shù)、字符函數(shù)、轉(zhuǎn)換函數(shù)的功能及使用。7. 掌握格式化函數(shù)的功能及使用。8. 掌握程序輸入輸出的基本方法。重點(diǎn)與難點(diǎn):1.代碼行的書寫規(guī)則2.Visual Basic的基本數(shù)據(jù)類型。3.算術(shù)、關(guān)系、邏輯運(yùn)算符與表達(dá)式4.算術(shù)函數(shù)、字符函數(shù)、轉(zhuǎn)換函數(shù)、格式化函數(shù)5. InputBox函數(shù)的使用。6. MsgBox函數(shù)的使用。4.1 VB程序代碼組織方式一個VB程序由窗體界面和程序代碼兩部分組成,通過程序代碼把窗口界面的各個對象以及應(yīng)用中

42、的其它元素聯(lián)系在一起。程序代碼部分則由若干被稱為“過程”的代碼行及向系統(tǒng)提供某些信息的說明組成。過程及說明又被組織在“模塊”之中。將設(shè)計(jì)的過程代碼及相關(guān)說明合理地組織到不同的模塊之中,這就是設(shè)計(jì)代碼的結(jié)構(gòu)。4.1.1 過程所謂“過程”:就是具有特定的書寫格式,包含若干可被作為一個整體執(zhí)行的代碼行的一個代碼組。根據(jù)執(zhí)行的方式,可把“過程”分為“事件過程”和“通用過程”。事件過程為窗體以及窗體上的各種對象編寫的,用來響應(yīng)由用戶或系統(tǒng)引發(fā)的各種事件的代碼行就是“事件過程”。事件過程由VB中的事件調(diào)用。事件過程存儲在被稱為“窗體模塊”的文件中(擴(kuò)展名.frm),在缺省情況下是“私有的”(Private

43、)。換言之,事件過程在未加特別說明時,僅在該窗體內(nèi)有效。事件過程的代碼框架是由VB系統(tǒng)自動提供的通用過程一個應(yīng)用中的多個窗體可以共享一些代碼,或者一個窗體內(nèi)不同的事件過程可共享一些代碼,這些可以共享的代碼構(gòu)成的過程稱為“通用過程”。通用過程是由事件過程或其它通用過程而執(zhí)行的。這些通用過程在缺省情況下,是“公有的”(Public)。也就是說,通用過程可被所有的窗體共享。4.1.2 模塊模塊是VB用于將不同類型過程代碼組織到一起而提供的一種結(jié)構(gòu)。VB中有三種類型的模塊:窗體模塊、標(biāo)準(zhǔn)模塊和類模塊。窗體模塊應(yīng)用程序中的每個窗體都有一個相對應(yīng)的窗體模塊。窗體模塊不僅包含有用于處理發(fā)生在窗體中的各個對象

44、的事件過程,而且包含有窗體及窗體中各個控件對象的屬性設(shè)置以及相關(guān)的說明。如果某些通用過程僅供本窗體內(nèi)的其它過程享用,則他也可包含該窗體模塊之中。標(biāo)準(zhǔn)模塊標(biāo)準(zhǔn)模塊文件的擴(kuò)展名是.BAS標(biāo)準(zhǔn)模塊中保存的過程都是通用過程。除了這些通用過程以外,標(biāo)準(zhǔn)模塊中還包含有相關(guān)的說明。標(biāo)準(zhǔn)模塊中代碼不僅能用于一個應(yīng)用程序,而且可以供其它應(yīng)用程序重復(fù)使用。創(chuàng)建標(biāo)準(zhǔn)模塊最簡單的方法如下:單擊工具欄上添加窗體按鈕右側(cè)向下的箭頭,并在出現(xiàn)的選項(xiàng)列表中選擇“添加”,然后再在出現(xiàn)的“代碼編輯器”窗口中輸入代碼即可。類模塊類模塊包含用于創(chuàng)建新的對象類的屬性、方法的定義等。4.2 代碼行的書寫規(guī)則語句一個語句或者向系統(tǒng)提供某些

45、必要的信息(如程序中使用的數(shù)據(jù)類型等),或者規(guī)定系統(tǒng)應(yīng)該執(zhí)行的某些操作。語句的一般形式是: 語句體語句定義符用于規(guī)定語句的功能,語句體則提供語句所要說明的具體內(nèi)容或者要執(zhí)行的具體操作。VB程序是按行書寫的,一個語句可以寫在一行上;也可以通過在行的末尾加上“續(xù)行標(biāo)志”( _:即一個空格加一個下劃線字符),而分寫在多行上;也可在一個代碼行上寫入多個語句,但語句之間需要用冒號“:”分隔。舉例:將一個語句分寫在多行上: Dim student_name as string,student_number as integer,computer as integer, _ English as integ

46、er將一行寫多個語句: x=10:y$=”Visual Basic”:z=20書寫規(guī)范語句輸入時,可以不區(qū)分大小寫字母。一個代碼行輸入完后,按回車鍵,光標(biāo)會自動移向下一行,同時,系統(tǒng)還會自動把語句中所有“保留字“的第一個字母改為大寫字母,并在其前后加上空格。如:Rem是系統(tǒng)保留字程序注釋有兩種方法:Rem語句一般形式為:Rem注釋例如:Private Sub Command1_Click( ) Rem 響應(yīng)單擊按鈕事件的過程 Print“OK!“End Sub單引號一般形式: 例如:Private Sub Command1_Click( )響應(yīng)單擊按鈕事件的過程Print “OK!” 在窗體上

47、顯示“OK!”End Sub4.3 Visual BASIC數(shù)據(jù)類型數(shù)據(jù)是程序處理的對象。在程序中取值始終保持不變的數(shù)據(jù)稱為“常量”,常量可以是具體的數(shù)值,也可以是專門說明的符號。例如:圓周率的值3.14159。以符號形式出現(xiàn)在程序中,且取值可以發(fā)生變化的數(shù)據(jù)稱為“變量”,是存儲單元的代號,與數(shù)學(xué)上表示未知數(shù)的“變量”不同。4.3.1 數(shù)據(jù)類型數(shù)據(jù)類型存儲大?。˙yte) 取值范圍Integer整數(shù)2-3276832767Long長整數(shù)4-21474836482147483647Single單精度數(shù)4-3.402823E38-1.401298E-451.401298E-453.402823E3

48、8Double雙精度數(shù)8-1.79769313486232E308-4.94065645841247E-324Byte字節(jié)型數(shù)10255Boolean邏輯型(布爾型)數(shù)2True 或FalseString字符型數(shù)(變長)10+串長度0約20億個字符String字符型數(shù)(定長)串長度1約65400個字符Date日期型數(shù)8100年1月1日9999年12月31日Cuurrency貨幣型數(shù)8-922 337 203 685 447.5808 922 337 203 685 447.5807Object對象型數(shù)4任何對象引用Variant變體形數(shù)=16數(shù)值型可達(dá)Double的范圍字符型可達(dá)變長字符串型的

49、串長度變體型數(shù)據(jù)是VB的缺省數(shù)據(jù)類型,它可以存儲各種類型的數(shù)據(jù)。VB之所以提供多種數(shù)據(jù)類型,根本目的就是為了提高程序代碼的運(yùn)行效率。4.3.2 常量數(shù)值常量一般的數(shù)值常量由正負(fù)號、數(shù)字和小數(shù)點(diǎn)組成,正數(shù)的正號可以省略。在VB程序中,最常用的十進(jìn)制外,還可以使用八進(jìn)制和十六進(jìn)制。VB中的整數(shù)又分為整數(shù)和長整數(shù)。帶小數(shù)點(diǎn)的數(shù)稱為“實(shí)型數(shù)”或“浮點(diǎn)數(shù)”,根據(jù)占用存儲量的大小,又分為單精度和雙精度。浮點(diǎn)數(shù)值可表示為mmmEeee或 mmmDeee 兩種形式,其中mmm是尾數(shù),而eee是指數(shù)。用D,系統(tǒng)將把該值作為雙精度數(shù)據(jù)類型來處理,用E,系統(tǒng)也會把該值作為單精度數(shù)據(jù)類型來處理。例如:123 -227

50、 ;1758624 -3765410;123.4 -752.678 ; 3.1415926535 -8.573264907D-15VB中的八進(jìn)制數(shù)和十六進(jìn)制數(shù)都是無符號整數(shù)。八進(jìn)制數(shù)的表示方法是在數(shù)字前面加“&O”,十六進(jìn)制數(shù)的表示方法是在數(shù)字前面加“&H”.例如:&O137,&H137.字符常量把一串字符用引號刮起來,就構(gòu)成一個字符常量。例如:“Visual Basic”邏輯型常量日期常量:一般表示形式是:mm/dd/yyyy,例如:#6/15/1998#注意:為避免與字符串型常量相混肴,日期常量要用“#“括起來。符號常量代表常量的符號稱作“常量名”。常量名是一個長度不超過255個字符,只能

51、由字母、數(shù)字和下劃線組成且首字符必須是字母的字符串。常量名中的字母不區(qū)分大小寫。如果在程序中使用自定義符號常量,則應(yīng)用Const語句先行說明:Const語句的形式是: PublicPrivateConstAs Type=如果增加Public選項(xiàng),則被說明的常量可在整個應(yīng)用程序中使用;Private選項(xiàng)常量則在說明的范圍內(nèi)使用。Type用于指定常量的數(shù)據(jù)類型。另外,也可以在說明時,通過數(shù)據(jù)類型符號規(guī)定常量的類型。例如: Const Tax As Single=1.05 Tax是單精度數(shù)值常量 Public Const Country$ _ =”CHINA”,Fax_Num&=36134484 $

52、和&是用于說明數(shù)據(jù)類型的符號,Country$是字符串型常量,F(xiàn)ax_Num&是長整形常量。4.3.3 變量變量名及類型說明變量名的命名規(guī)則如下:首字符必須是字母長度不超過255個字符在作用域內(nèi)必須唯一作為變量名的字符串內(nèi)不得包括點(diǎn)號和用于類型說明的字符%.&.!.#.$。在變量名之前加上一個約定的前綴:數(shù)據(jù)類型前綴數(shù)據(jù)類型前綴整形Int長整形Lng單精度型Sng雙精度型Dbl邏輯型Bln貨幣型Cur日期型Dt字串型Str變體型vnt字節(jié)型Byt變量作用域和變量說明語句變量在使用之前,最好用變量說明語句說明其類型。根據(jù)變量說明方式的不同,變量的有效作用范圍也不同。變量的有效作用范圍稱為變量的作

53、用域。變量作用域等級 范圍局部在過程中說明,僅在說明它的過程中有效窗體/模塊在窗體或標(biāo)準(zhǔn)模塊中說明,在定義該變量的模塊或窗體的所有過程內(nèi)均有效。全局(公有)在模塊或窗體中說明,在工程內(nèi)的所有過程都有效變量說明語句可使用四種說明語句說明變量的類型: Dim As , As Public As , As Private As , As Static As , As 其中,Public語句說明全局變量,Private 語句用于說明窗體/模塊級變量,Static用于說明靜態(tài)變量,而Dim語句則可用于各種場合,是最常用的。窗體級和公有級的變量應(yīng)在“代碼編輯器”窗口中的(通用)或(聲明)部分進(jìn)行說明。例如

54、: Dim Count As Integer Public Name As String , Age As Integer 局部變量僅在使用它的過程中說明: Private Sub Command1_Click Dim Count As Integer End Sub在用Dim語句說明一個變量后,系統(tǒng)自動為該變量賦予一個初始值。若變量是數(shù)值型,則初始值 為0,若變量為字符串型,則初始值為空串。另外,系統(tǒng)還會自動轉(zhuǎn)換在代碼行中輸入的變量名,以與說明的變量名相匹配。例如: Dim MyCountry As String在程序中輸入:mycountry=”NanJing”VB將其自動轉(zhuǎn)換成:MyCo

55、untry=”NanJing”使用Dim語句說明變量的數(shù)據(jù)類型,通常稱為“顯式說明”;也可以采用在變量名后加上一個用于規(guī)定變量類型的說明字符,來規(guī)定變量的類型,這種方式稱之“隱式說明”。VB規(guī)定的類型說明字符見表:說明字符示例意義%X%X是整型變量&X&X是長整型變量!X!X是單精度變量#X#X是雙精度變量XX是貨幣型變量$X$X是字符型變量例如:在過程 Private Sub Form_Click( ) K&=1 變量K為長整形 Country$=”China” 變量Country為字符串型 Print k,Country End Sub按照缺省規(guī)定,字符串型變量的長度是可變的,方法如下:

56、Dim As String *size例如:Dim uuu As String *50標(biāo)準(zhǔn)模塊中的定長字符串變量可說明為Public和Private。在窗體和類模塊中,則必須將定長字符串變量說明為Private(3) Option Explict在模塊中使用Option Explict 語句,系統(tǒng)將檢查模塊中所有未加顯式說明的變量,一旦發(fā)現(xiàn)有這樣的變量存在,就會產(chǎn)生一個出錯信息,提示使用者改正錯誤。Option Explict 語句可使用以下方法輸入:激活“代碼編輯器”窗口從“對象”列表中選“General”或“通用”從“過程”列表中選“Declarations”或(聲明)在“代碼”編輯欄中輸

57、入“Option Explict”4.4 運(yùn)算符與表達(dá)式使用運(yùn)算符和括號把函數(shù)、變量、常量或常數(shù)連接起來,所形成的式子稱為表達(dá)式。VB中的運(yùn)算符和表達(dá)式可分為算術(shù)運(yùn)算符與算術(shù)表達(dá)式、關(guān)系運(yùn)算符與關(guān)系表達(dá)式和邏輯運(yùn)算符與邏輯表達(dá)式。4.4.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式1算術(shù)運(yùn)算符編號符號意義示例結(jié)果1乘方(指數(shù)運(yùn)算)2382*乘法運(yùn)算2*363/除法運(yùn)算5/22.54整除5225Mod求余運(yùn)算5Mod216+加法2+357-減法取負(fù)號2-3-4-1-48&字符串連接“Visual”&”Basic”VisualBasic算術(shù)運(yùn)算符的運(yùn)算次序?yàn)椋?-(負(fù)號)*和/ (整除) Mod +和-&算術(shù)表達(dá)式

58、把常量、變量等運(yùn)算元素用算術(shù)運(yùn)算符連接起來的式子稱為“算術(shù)表達(dá)式”。例如: a*b/(c*d) 3.14159265*r24.4.2 關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算用于對兩個數(shù)據(jù)進(jìn)行比較,比較結(jié)果為邏輯值“True”或“False”。關(guān)系運(yùn)算符運(yùn)算符 功能小于大于=大于等于不等于=等于Is用來比較兩個對象的引用變量關(guān)系表達(dá)式就是用關(guān)系運(yùn)算符把兩個比較對象連接起來的式子。比較對象可以是變量、常量和算術(shù)表達(dá)式。例如:a=z/2 b$”Visual Basic” object1 is object2關(guān)系表達(dá)式的運(yùn)算是采用“按值比較”的方法,即先求出運(yùn)算符兩邊的值,若是變量,則取其當(dāng)前值,如果兩邊的值

59、可滿足關(guān)系運(yùn)算符,則結(jié)果為“True”,否則為“False”.如果比較對象是字符型數(shù)據(jù),則按“逐個(字符)比較,遇大則大(按ASCII代碼數(shù)值),長大短小,全部相同,才是相等”的方式進(jìn)行關(guān)系運(yùn)算。4.4.3 邏輯運(yùn)算符和邏輯表達(dá)式邏輯運(yùn)算是對邏輯值進(jìn)行的運(yùn)算。邏輯運(yùn)算符邏輯運(yùn)算符執(zhí)行的運(yùn)算說明示例Not邏輯非單操作符,真變假,假變真若a=True,Z則Not a=FalseAnd邏輯與只有當(dāng)兩個操作數(shù)均為真時,才為真。若a,b均為邏輯值,則a,b同為“True”時,a And b為“True”O(jiān)r邏輯或兩個操作數(shù)中至少有一個為真時,結(jié)果為真。若a,b均為邏輯值,只要a,b中有一個為“True”

60、,aOrb為“True”Xor邏輯異或兩個操作數(shù)只有一個為真時,結(jié)果為真。若a,b均為邏輯值,a,b中只有一個為“True”,aXor b為“True”邏輯運(yùn)算的優(yōu)先次序是:NotAndOrXor邏輯表達(dá)式邏輯表達(dá)式是用邏輯運(yùn)算符把邏輯變量連接起來的式子。例如:a=2*3.14159*r And x5 Or Not b (設(shè)b為邏輯變量)4.4.4 運(yùn)算規(guī)則當(dāng)表達(dá)式包含多種操作符時,則要先處理算術(shù)運(yùn)算符,接著處理比較運(yùn)算符,最后處理邏輯運(yùn)算符。而則幾種運(yùn)算符內(nèi)的優(yōu)先次序,則按前面。注意:如果表達(dá)式中同時出現(xiàn)乘法和除法,則按從左到右的順序計(jì)算;加法和減法同時出現(xiàn)時,也按從左到右的順序計(jì)算。4.5

溫馨提示

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

評論

0/150

提交評論