




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第一章 對象及其操作基本要求1) 掌握Visual Basic 6.0開發(fā)環(huán)境的使用。了解工程的概念和組成。2) 通過編寫一個程序?qū)嵗齺砹私鈶?yīng)用程序的整個編寫步驟。3) 重點掌握面向?qū)ο蟪绦蛟O(shè)計的基本原理和事件驅(qū)動編程機制。4) 掌握Visual Basic中對象的概念和用法。基本內(nèi)容11 Visual Basic程序開發(fā)環(huán)境12 面向?qū)ο蟮某绦蛟O(shè)計121 程序設(shè)計語言的發(fā)展122 結(jié)構(gòu)化程序設(shè)計123 面向?qū)ο蟮幕靖拍?,24 VB程序的執(zhí)行步驟:125 Visual Basic應(yīng)用程序設(shè)計步驟13 常用對象操作131 窗體操作132 計時器和標簽133 文本框134 命令按鈕作業(yè)練習(xí)第二
2、章 數(shù)據(jù)類型、運算及數(shù)據(jù)輸入輸出基本要求1)重點掌握Visual Basic的基本語法知識2)掌握常量和變量的定義和使用。3)了解各種運算符的具體用法。基本內(nèi)容21 編碼規(guī)則、數(shù)據(jù)類型、常量與變量211 編碼規(guī)則212 數(shù)據(jù)類型213 常量和變量22 表達式221 算術(shù)運算222 字符串運算223 關(guān)系運算23 常用內(nèi)部函數(shù)(標準函數(shù)、庫函數(shù))231數(shù)學(xué)函數(shù)233 日期函數(shù)234 輸入/出函數(shù)235 shell函數(shù)第三章 控制結(jié)構(gòu)基本要求1)重點掌握幾種程序的結(jié)構(gòu)。2)掌握DoLoop和ForNext等幾種循環(huán)語句的用法。3)了解GoTo語句執(zhí)行跳轉(zhuǎn)的用法。基本內(nèi)容31選擇結(jié)構(gòu)311 單行結(jié)構(gòu)
3、條件語句312 塊結(jié)構(gòu)條件語句313 多分支結(jié)構(gòu)32 循環(huán)控制結(jié)構(gòu)321 For循環(huán)控制結(jié)構(gòu)322 While循環(huán)323 DoLoop循環(huán)第四章 數(shù)組基本要求1)重點掌握數(shù)據(jù)的定義和使用。2)掌握使用數(shù)組來保存不同類型的數(shù)據(jù)。3)掌握使用數(shù)據(jù)進行排序,學(xué)會使用動態(tài)數(shù)組。4)了解控件數(shù)組的基本原理和用途,學(xué)會在窗口界面中設(shè)計控件數(shù)組,和對控件數(shù)組編寫事件過程。基本內(nèi)容41 數(shù)組的概念:411 數(shù)組的定義412 動態(tài)數(shù)組42 數(shù)組的基本操作421 數(shù)組元素的輸入、輸出和復(fù)制422 排序43 控件數(shù)組第五章 過程基本要求1) 重點掌握子程序和函數(shù)的編寫和使用。2) 掌握模塊化程序設(shè)計的思想,學(xué)會編寫
4、具有特定功能的子程序或函數(shù)。3) 了解Visual Basic常用的內(nèi)部函數(shù)的功能。基本內(nèi)容51 過程分類52 Funtion過程:(1)Funtion過程的定義(2)調(diào)用Funtion過程53 Sub過程(1)Sub過程的建立(2)調(diào)用Sub過程54 參數(shù)傳送、變量作用域541 按引用、按值的參數(shù)傳送542 不定數(shù)量參數(shù)543 作用域544 遞歸第六章 常用控件、界面基本要求1)重點掌握單選按鈕、復(fù)選框、框架、列表框、組合框、滾動條等控件的使用。1)重點掌握菜單、工具欄的制作過程。2)學(xué)會設(shè)計簡單的窗口界面,并編寫不太復(fù)雜的應(yīng)用程序。基本內(nèi)容61常用控件611 單選按鈕、復(fù)選框、框
5、架612 列表框、組合框613 滾動條、圖形控件62 常用ActiveX控件63 菜單第七章 數(shù)據(jù)文件基本要求1)重點掌握文件的讀寫操作。2)了解常用的文件操作的語句和函數(shù)。基本內(nèi)容1文件的結(jié)構(gòu)與分類。2文件操作語句和函數(shù)。3順序文件:4隨機文件。5文件系統(tǒng)控件:6文件基本操作。20第一章 對象及其操作 基本要求1) 掌握Visual Basic 6.0開發(fā)環(huán)境的使用。了解工程的概念和組成。2) 通過編寫一個程序?qū)嵗齺砹私鈶?yīng)用程序的整個編寫步驟。3) 重點掌握面向?qū)ο蟪绦蛟O(shè)計的基本原理和事件驅(qū)動編程機制。4) 掌握Visual Basic中對象的概念和用法。基本內(nèi)容11 Visual Basi
6、c程序開發(fā)環(huán)境1啟動(1)單擊“開始”按鈕“程序”Microsoft Visual Studio 6.0下的Microsoft Visual Basic 6.0中文版進行啟動。(2)若Windows桌面上有Visual Basic 6.0的快捷圖標,則可雙擊它直接進行啟動。(3)通過“我的電腦”或“資源管理器”進入安裝路徑,雙擊VB6.EXE的圖標進行啟動。2退出(1)選擇“文件”菜單à“退出”命令。(2)單擊標題欄右側(cè)的關(guān)閉按鈕。(3)使用Alt+Q快捷鍵。 3集成開發(fā)環(huán)境Visual Basic的3種工作狀態(tài):(1)設(shè)計;(2)運行,只能交互;(3)中斷舉例說明基本操作。12 面
7、向?qū)ο蟮某绦蛟O(shè)計121 程序設(shè)計語言的發(fā)展機器語言匯編語言高級程序設(shè)計語言面向?qū)ο蟮某绦蛟O(shè)計語言例如Visual Basic、Visual C+、Java、Visual Basic .NET等122 結(jié)構(gòu)化程序設(shè)計三種基本結(jié)構(gòu):順序結(jié)構(gòu);分支結(jié)構(gòu)(即選擇結(jié)構(gòu));當型循環(huán)、直到型循環(huán) True False P B False True P A True False P A B A B 三種基本結(jié)構(gòu)的共同點如下:(1)只有一個入口和一個出口。(2)結(jié)構(gòu)中的每個部分都有執(zhí)行到的可能。(3)結(jié)構(gòu)內(nèi)不存在死循環(huán)(無終止的循環(huán))。結(jié)構(gòu)化程序設(shè)計方法:自頂向下逐步細化模塊化設(shè)計123 面向?qū)ο蟮幕靖拍?1
8、)類某些具有共同抽象的對象的集合,即將這些對象的共同特征(屬性和方法等)抽取出來,形成一個關(guān)于這些對象集合的抽象定義。(2)對象類的實例化,是運行的基本實體,包括屬性、方法和事件要素。將數(shù)據(jù)和處理該數(shù)據(jù)的過程(函數(shù)和子程序)打包在一起而生成的新的數(shù)據(jù)類型稱之為對象。VB工具箱中是各種標準控件類,通過“部件”還可加入ActiveX控件類。TextBox是文本框控件類,在窗體中實例化為Text1,就是文本框控件對象。也可以重新修改對象名Text1,Text1對象繼承了TextBox類的屬性、方法和事件。Form類(窗體類)實例化為Form1對象,新建工程時自動地創(chuàng)建一個Form1對象。在窗體對象中
9、創(chuàng)建對象的方法:雙擊法、拖動法。(3)屬性對象本身所具有的特性。屬性的設(shè)置:設(shè)計狀態(tài)下利用屬性框修改、運行狀態(tài)中通過代碼賦值。(4)方法對象自身可以進行的動作或行為。VB將通用的過程或函數(shù)封裝在類中,建立好對象后就可以調(diào)用。(5)事件預(yù)先定義好的、能夠被對象識別的動作。(6)事件驅(qū)動在Visual Basic應(yīng)用程序中每一個窗體和控件對象都有一個預(yù)先定義好的過程集,運行時若用戶或系統(tǒng)觸發(fā)事件,則調(diào)用執(zhí)行相應(yīng)的事件過程,否則整個程序就處于等待狀態(tài)。并沒有按事件過程的順序執(zhí)行。在某事件過程中所編寫的代碼決定了用戶在觸發(fā)該事件后執(zhí)行的動作。例:根據(jù)以下描述,請說出氣球?qū)ο蟮膶傩浴⒎椒ê褪录謩e是什么
10、?米老鼠形狀的紅色氣球被針刺破了。答:氣球?qū)ο蟮膶傩裕好桌鲜笮螤睢⒓t色。方法:破了。事件:刺。1,24 VB程序的執(zhí)行步驟:(1)啟動應(yīng)用程序,裝載和顯示窗體。(2)窗體(窗體上的控件)等待事件的發(fā)生。(3)事件發(fā)生時執(zhí)行對應(yīng)的事件過程。(4)重復(fù)上述(2)、(3)兩步。125 Visual Basic應(yīng)用程序設(shè)計步驟 (1)創(chuàng)建工程(2)界面設(shè)計(3)屬性設(shè)置(4)代碼編輯,糾錯(5)文件保存(6)程序運行和調(diào)試13 常用對象操作131 窗體操作例3-1,學(xué)習(xí)窗體屬性。Name窗體名稱Visible對象是否可見MouseIcon自定義鼠標Caption窗體標題Font字體格式Icon加載窗體
11、圖標MaxButton是否最大化ForeColor前景色ControlBox是否有控制菜單MinButton是否最小化BackColor背景色Picture加載圖片Height對象的高度BorderColor邊框顏色BoreStyle窗體邊框的樣式Width對象的寬度FillColor填充顏色WindowState運行時的顯示狀態(tài)Top上邊距MaskColor圖形透明色BorderStyle窗體邊框風(fēng)格Left左邊距UseMaskColor是否透明CurrentX當前位置的橫坐標Enable是否有效MousePoint鼠標指針類型CurrentY當前位置的縱坐標例3-2,學(xué)習(xí)窗體事件。Load
12、裝入Click單擊Initialize初始化事件UnLoad卸載DblClick雙擊QueryUnload卸載前觸發(fā)Activate激活Paint移動、放大GotFocus獲得焦點事件Deactive不是當前Resize改變窗體大小LostFocus失去焦點事件例3-3,學(xué)習(xí)窗體方法。Print輸出打印Hide隱藏窗體PrintForm打印窗體Cls清屏Move移動窗體Refresh刷新窗體Show顯示窗體AutoRedraw例3-4,學(xué)習(xí)多窗體切換。工程菜單中屬性、通用、啟動對象設(shè)置啟動窗體。132 計時器和標簽例3-5,滾動字幕。計時器的Interval屬性決定間隔多長時間產(chǎn)生一次Time
13、r事件。標簽的Alignment屬性決定其中文字的水平對齊方式;AutoSize:自動調(diào)整大小;WordWarp:由AutoSize決定在垂直或水平方向自動調(diào)整大小;BackStyle:標簽是否透明。133 文本框例3-6,數(shù)據(jù)過濾。文本框?qū)傩缘腡ext:其中的內(nèi)容;MultiLine:文本是否多行;MaxLength:文本的最大長度;ScrollBars:滾動條;Locked:可否編輯;PasswordChar:輸入密碼;SelStart:選定文本的開始位置;SelLength:選定文本的長度;SelText:選定的文本。文本框事件Change:改變Text的內(nèi)容時;KeyPress:輸入一
14、個字符時;LostFocus:失去焦點時;GotFocus獲得焦點時。文本框方法SetFocus:焦點移到指定對象。134 命令按鈕例3-7,實現(xiàn)剪帖。按鈕屬性Style:決定Picture是否能顯示圖形;ToolTipText:提示文字;Value:按鈕是否按下;Cancel:設(shè)定取消按鈕;Default:自動獲得焦點的按鈕。作業(yè)練習(xí)1-1、1-2、2-1、2-2、3-13-7第二章 數(shù)據(jù)類型、運算及數(shù)據(jù)輸入輸出基本要求1)重點掌握Visual Basic的基本語法知識2)掌握常量和變量的定義和使用。3)了解各種運算符的具體用法。基本內(nèi)容21 編碼規(guī)則、數(shù)據(jù)類型、常量與變量211 編碼規(guī)則1
15、VB字符集字母、數(shù)字、27個專用字符2VB語句書寫(1)不區(qū)分大小寫,但為了增加可讀性,關(guān)鍵字中屬于單詞的首字母用大寫。語句可以左縮進。(2)同行多條語句用冒號分隔。長語句可以用空格加下劃線續(xù)行。(3)單引號+注釋,用于獨行注釋或語句后注釋,但不能用于續(xù)行注釋。Rem+注釋可獨行,與其他語句同行時用冒號分隔。(4)數(shù)值前加&H、&O分別表示十六進制、八進制,不加前綴表示十進制。3標識符命名(1)由字母或漢字引導(dǎo)的字母、漢字、數(shù)字、下劃線組成。避免與關(guān)鍵字重名。(2)字符數(shù)255,其中窗體、控件、模塊的標識符字符數(shù)40。(3)建議對象名前3個小寫字母表示對象的類型。以后能自動向首
16、次定義的轉(zhuǎn)換。212 數(shù)據(jù)類型不同數(shù)據(jù)類型占用內(nèi)存、取值范圍、運算性質(zhì)不同。1基本數(shù)據(jù)類型(1)數(shù)值型字節(jié)型、整型、長整型、單精度、雙精度、貨幣型數(shù)據(jù)類型關(guān)鍵字類型符前綴占用字節(jié)表示范圍字節(jié)型Byte無byt10255整型Integer%int2-215215-1長整型Long&lng4-231231-1單精度Single!sng4-3.4E383.4E38雙精度Double#dbl8-1.8D3081.8D308貨幣型Currencycur8-922337203685477字符型String$str不定長065535個字符邏輯型Boolean無bln2True、False日期型Dat
17、e|Time無dtm801,01,10012,31,9999對象型Object無obj4任何對象的引用變體型Variant無vnt據(jù)需分配(2)字符型。定長字符串、變長字符串(3)邏輯型(4)日期型(5)對象型(6)變體型。在運行期間存放不同類型的數(shù)據(jù)。2用戶定義的數(shù)據(jù)類型3枚舉類型213 常量和變量1變量變量顯示聲明,通過類型符號:S&=10Dim聲明語句:Dim a As Integer,b As Long或Dim a %, b&隱式聲明,不聲明就使用。設(shè)置強制聲明:Option Eplicit或在選項、編輯器選中“要求變量聲明”。未賦值的變量有默認值:數(shù)值,0;變長字符串
18、,無字符的空串;定長字符串,定長空格;varint,空;booleam,false。變量的有效范圍局部變量:過程內(nèi)部聲明的變量,僅在該過程中有效。Dim 變量名 As 類型,過程執(zhí)行期結(jié)束后重新調(diào)用過程,該變量重新初始化。Static 變量名 As 類型 ,過程執(zhí)行期結(jié)束后重新調(diào)用過程,原值有效。模塊變量:在模塊通用段用Private或Dim聲明,可被該模塊的任何過程訪問。全局變量:在標準模塊(文件擴展名為.bas,只含有程序代碼)聲明段用Public或Global聲明,可被該工程中的所有模塊的任何過程訪問。窗體模塊的通用段用Public聲明后變量,其他模塊可以用“窗體模塊名變量名”訪問。2常
19、量直接常量:在程序中直接給出數(shù)值、字符串、日期等具體的數(shù)值。#5/1/2009 8:30:15 AM#符號常量:用標識符代表。Const <符號常量名> As 數(shù)據(jù)類型 =<常量表達式>例4-1,交換文本框中的數(shù)據(jù)。22 表達式221 算術(shù)運算算術(shù)運算表達式:由算術(shù)運算符、括號、函數(shù)、數(shù)據(jù)組成的式子。算術(shù)運算符有優(yōu)先級,()、-、* /、Mod、+ -。運算時以參與運算的精度高的類型為準,但Long與Single運算結(jié)果為Double;除法和乘方的結(jié)果為Double。222 字符串運算字符串運算符:&、+,實現(xiàn)連接。數(shù)字字符串+數(shù)值型數(shù),將“數(shù)字字符串”轉(zhuǎn)換為數(shù)
20、值型再做算術(shù)運算;字符串+數(shù)值型數(shù),結(jié)果出錯;數(shù)值型數(shù)&數(shù)值型數(shù),將“數(shù)值型數(shù)”轉(zhuǎn)換為字符串型再做連接運算。223 關(guān)系運算關(guān)系運算符:<、>、<=、>=、=、<>、Is、Like。各關(guān)系運算符優(yōu)先級相同。優(yōu)先級低于算術(shù)運算+、-和字符串運算,高于邏輯符的非not運算。224 邏輯運算邏輯運算符:Not、And、Or、Xor、Eqv、Imp。例4-2,判斷閏年。23 常用內(nèi)部函數(shù)(標準函數(shù)、庫函數(shù))數(shù)學(xué)函數(shù)、字符串函數(shù)、日期函數(shù)、轉(zhuǎn)換函數(shù)、輸出函數(shù)、測試函數(shù)。有參數(shù)、無參數(shù)。231數(shù)學(xué)函數(shù)Sqrt(N)Abs(N)Int(N)Fix(N)Sin(N)
21、Cos(N) Round(N1,N2)Tan(N)Atm(N)Exp(N)Log(N)Rnd(N)Sgn(N)例4-3,直角三角形斜邊。232 字符串函數(shù)Asc(“And”) 65字符串首字母的ASCII碼值Chr(98) ”b”ASCII碼所代表的字符Str(456) “456”數(shù)字轉(zhuǎn)換為字符串Val(“24 and 57”) 24Val(“and 57”) 0不能識別,不轉(zhuǎn)換Hex(65.6) “42”O(jiān)CT(65.6) “102”四舍五入后的八進制LCase(“Hello”) “hello”UCase(“Hello”) “HELLO”Left(“Hello Li”,5) “Hello”R
22、ight(“Hello Li”,2)Mid(“Hello Li”,7,2)String(4,”*”) “*”Ltrim(C)Rtrim(C)Trim(C)Space(N)Len(C)例4-4,提取字符串233 日期函數(shù)DateTimeNow不需參數(shù),返回當前系統(tǒng)的日期時間Year(D)Month(D)Day(D)WeekDay(D)Hour(Time)DateAdd()DateDiff()例4-5,顯示日期時間。234 輸入/出函數(shù)輸入函數(shù)InputBox(promt,title,default,Xpos,Ypos)消息框MsgBox(prompt,button,title)Button可用符
23、號常量、數(shù)字表示:vbOKOnly0;vbOKCancel 1;vbAbortREtryIgnore2Print輸出對象Print 輸出項,|;Debug.Print “HELLO” 在立即窗口顯示HELLOPrinter. Print “HELLO” 在打印機上輸出HELLO逗號表示在14列后輸出,分號表示緊跟著輸出格式輸出Formatexpression,format例4-6,輸入/出函數(shù)235 shell函數(shù)Shell(字符串,窗口類型)字符串:路徑程序名、要打開的文檔窗口類型:程序窗口的大小。例4-7,調(diào)用外部程序。第三章 控制結(jié)構(gòu) 基本要求1)重點掌握幾種程序的結(jié)構(gòu)。2)掌握DoLo
24、op和ForNext等幾種循環(huán)語句的用法。基本內(nèi)容31選擇結(jié)構(gòu) 311 單行結(jié)構(gòu)條件語句If <條件> Then <語句1> Else <語句2> 例5-1,四則運算。例5-2,求最大數(shù)。312 塊結(jié)構(gòu)條件語句If <條件> Then語句塊1 Else語句塊2End If例5-3,選擇嵌套。IIf函數(shù)313 多分支結(jié)構(gòu)Select Case <測試表達式>Case <表達式列表1>語句塊1Case <表達式列表2>語句塊2Case Else語句塊nEnd SelectIf <條件1> Then語句塊
25、1ElseIf <條件2> Then語句塊2Else<其他語句>End If表達式列表的形式:case 4,6,8,3+7case “計算機”,”電腦”Xase 2 to 20case “a” to “z”case is < 10case 4,6,8 to 20,is < 100例5-4,判斷星期。例5-5,成績等級。32 循環(huán)控制結(jié)構(gòu)321 For循環(huán)控制結(jié)構(gòu)For <循環(huán)變量> = <初值> To <終值> Step <步長> 語句塊 Exit For 語句塊Next 循環(huán)變量例5-6,數(shù)列求和。循環(huán)變量又
26、稱為“循環(huán)控制變量”、“控制變量”或“循環(huán)計數(shù)器”,是用做循環(huán)計數(shù)器的數(shù)值變量。這個變量必須為數(shù)值型變量,不能是邏輯型數(shù)據(jù)或數(shù)組元素。 循環(huán)體 被重復(fù)執(zhí)行的代碼段。循環(huán)次數(shù)循環(huán)體被重復(fù)執(zhí)行的次數(shù)。循環(huán)次數(shù)必須是有限的,否則稱程序陷入“死循環(huán)”322 While循環(huán)While <循環(huán)條件> 循環(huán)體Wend例5-7,While型。323 DoLoop循環(huán)格式1Do While /Until <條件> 語句塊 Exit Do 語句塊Loop False 循環(huán)條件 循環(huán)體 True 格式2Do 語句塊 Exit Do 語句塊Loop While /Until <條件>
27、; 循環(huán)條件 循環(huán)體 False True 例5-8,求階乘。例5-9,判斷素數(shù)。例5-10,乘法表。小結(jié)賦值語句對普通變量的賦值。對對象變量的賦值。例Dim ex As DataBaseSet ex=OpenDataBase("File.mdb")If 語句Select Case 語句For 循環(huán)語句普通的數(shù)字變量:集合中的對象:For Each obj In objs.Next objDo 循環(huán)語句當型循環(huán)(先判斷后執(zhí)行)直按型循環(huán)(先執(zhí)行后判斷)With 語句With Text1 .SelStart=0: .SeiLength=Len(.Text):.SetFocus
28、End With第四章 數(shù)組 基本要求1)重點掌握數(shù)據(jù)的定義和使用。2)掌握使用數(shù)組來保存不同類型的數(shù)據(jù)。3)掌握使用數(shù)據(jù)進行排序,學(xué)會使用動態(tài)數(shù)組。4)了解控件數(shù)組的基本原理和用途,學(xué)會在窗口界面中設(shè)計控件數(shù)組,和對控件數(shù)組編寫事件過程。基本內(nèi)容41 數(shù)組的概念: 411 數(shù)組的定義數(shù)組是一組相同類型的變量集合。數(shù)組名:集合的名稱。數(shù)組元素:集合內(nèi)的每一個成員。下標:數(shù)組元素在數(shù)組中的編號,代表了該元素在數(shù)組中的位置。數(shù)組的長度:數(shù)組元素的個數(shù)。某個數(shù)組元素表示為:數(shù)組名(下標)按維數(shù)分類:一維數(shù)組、二維數(shù)組、三維數(shù)組。最大維數(shù)達60。多維數(shù)組的大小(元素的個數(shù))= 第一維大小×第
29、二維大小× 按在內(nèi)存分配是否可變分:定長(固定大小)數(shù)組(數(shù)組的維數(shù)和長度一旦定義,不能改變)動態(tài)數(shù)組(可動態(tài)重新定義數(shù)組的維數(shù)和長度)定長數(shù)組的聲明Dim 數(shù)組名(下標) As 類型名Dim Score(1 to 30) As IntegerPrivate 數(shù)組名(下標) As 類型名Private BookName(3000) As StringPublic 數(shù)組名(下標) As 類型名Public Cost(100) As SingleDim Tr(3,4,4) As LongDim A(1 to 5,1 to 5,1 to 5) As LongAs 類型名若省略,則默認為變體
30、數(shù)組。數(shù)組正確定義后:系統(tǒng)分配連續(xù)的內(nèi)存空間,空間名稱為數(shù)組名數(shù)組中各個元素獲得初始值數(shù)值型為0邏輯型為False字符串型為""變體型為Empty412 動態(tài)數(shù)組動態(tài)數(shù)組在數(shù)組聲明時不指定數(shù)組的大小Dim 數(shù)組名()As 類型名 如:Dim s() As Single 動態(tài)數(shù)組在需要使用時必須先使用Redim語句指定或改變維數(shù)和大小,然后訪問。程序程序到Redim再分配存儲空間。Redim Preserve 數(shù)組名(下標1,下標2)As 類型名 如:Redim s(10) Redim Preserve s(2,3)Preserve保留數(shù)組中原有的數(shù)據(jù)。用Preserve的R
31、edim只能改變數(shù)組最后一維的大小。例6-1,統(tǒng)計人數(shù)。Private Sub Form_Click()Dim a(-3 To 3) As Integer ' 初值為0Dim b(1, 1 To 3, 3) ' 未定義類型,默認變體。沒有初值Dim i%, j%, k%Print LBound(a), UBound(a)For i = LBound(a) To UBound(a) Print "a(" i; ")=" a(i),Next iPrint: PrintPrint LBound(b, 1), LBound(b, 2), LBou
32、nd(b, 3)Print UBound(b, 1), UBound(b, 2), UBound(b, 3)Print: PrintFor i = LBound(b, 1) To UBound(b, 1) For j = LBound(b, 2) To UBound(b, 2) For k = LBound(b, 3) To UBound(b, 3) Print "b(" i; "," j; "," k; ")=" b(i, j, k), Next k Print Next j PrintNext iEnd Sub
33、42 數(shù)組的基本操作 421 數(shù)組元素的輸入、輸出和復(fù)制數(shù)組的輸入Dim A(1 To 5) As Integer, i As IntegerFor i = 1 To 5 A(i) = InputBox(“請輸入第” & i & “個數(shù)據(jù)”)Next i適用于數(shù)組元素值與下標之間存在函數(shù)關(guān)系:Dim A(1 To 5) As Integer, k As Integer For k = 1 To 5 A(k) = 2 * k - 1 Next kArray函數(shù) 對數(shù)組整體賦值Dim m As Variant,i As Integer,b() As VariantmArray(1,
34、3,5,7,9) 即m(0)=1、m(1)=3、m(2)=5、m(3)=7、m(4)=9 For i=0 to UBound(m) 獲取下界函數(shù):UBound(),設(shè)定下界為1:Option Base 1Picture1Print m(i);“ ”;Next ib=m m各元素賦值給b。b不能為具體類型,必須為變體例6-2,數(shù)組的復(fù)制422 排序選擇法For i = 1 To UBound(iA) - 1 iMin = i For j = i + 1 To UBound(iA) If iA(j) < iA(iMin) Then iMin = j Next j t = iA(i) iA(i
35、) = iA(iMin) iA(iMin) = tNext i冒泡法iMin = UBound(iA)For i = 1 To iMin - 1 For j = iMin To i + 1 If iA(j) < iA(j - 1) Then t = iA(j) iA(j) = iA(j - 1) iA(j - 1) = t End If Next jNext i43 控件數(shù)組控件數(shù)組由一組類型相同的控件組成,它們具有一個共同的控件名,相同的屬性,實現(xiàn)相似的功能,控件數(shù)組中各控件通過索引號識別。第i個控件的索引號為i-1。在設(shè)計時建立控件數(shù)組,例6-3,設(shè)置背景。在運行時建立控件數(shù)組:Pr
36、ivate Sub Form_Load()Dim i&For i = 1 To 3 Load Text1(i) Text1(i).Left = Text1(0).Left + i * (Text1(0).Width + 300) Text1(i).Visible = TrueNext iEnd SubPrivate Sub Command1_Click()Dim i&For Each TextBox In Text1 Text1(i) = Text1(i).Index i = i + 1NextEnd Sub第五章 過程 基本要求1) 重點掌握子程序和函數(shù)的編寫和使用。2) 掌
37、握模塊化程序設(shè)計的思想,學(xué)會編寫具有特定功能的子程序或函數(shù)。3) 了解Visual Basic常用的內(nèi)部函數(shù)的功能。基本內(nèi)容51 過程分類應(yīng)用程序.vbp窗體模塊.frm事件過程Sub自定義子過程Sub自定義函數(shù)Fun自定義子過程Sub自定義函數(shù)Fun標準模塊.bas類模塊.cls窗體模塊不僅包含有用于處理發(fā)生在窗體中的各個對象的事件過程,而且包含有窗體及窗體中各個控件對象的屬性設(shè)置以及相關(guān)的說明。如果某些自定義過程僅供本窗體內(nèi)的其他過程共享,則它也可包含在該窗體模塊之中。標準模塊:被應(yīng)用程序的多個窗體共享。包含有自定義過程、函數(shù)、類型說明、數(shù)據(jù)說明。類模塊:包含用于創(chuàng)建新的對象類的
38、屬性、方法的定義等。窗體事件過程:Private Sub Form_事件名(參數(shù)列表)局部變量和常數(shù)聲明語句塊End Sub控件事件過程:Private Sub 控件名_事件名(參數(shù)列表)局部變量和常數(shù)聲明語句塊End SubPrivate表示該事件過程不能在它自己的窗體模塊之外被調(diào)用。52 Funtion過程: (1)Funtion過程的定義Public|PrivateStatic Function 函數(shù)名(參數(shù)列表)As Type局部變量或常數(shù)定義:語句塊:函數(shù)名 = 表達式:Exit Function語句塊:函數(shù)名= 表達式End Function通過As指定函數(shù)返回值的類型;缺省該選項
39、時,函數(shù)類型默認為變體(Variant)類型。形參僅代表了參數(shù)的個數(shù)、位置和類型,其初值來源于函數(shù)過程調(diào)用。ByVal表明按值傳遞,ByRef表明按地址傳遞,缺省時按地址傳遞。當退出過程體后,用Dim聲明的變量的空間被收回,而Static聲明的要等到模塊結(jié)束時,才被收回空間。(2)調(diào)用Funtion過程由于函數(shù)過程名返回一個值,故一般函數(shù)過程不能作為單獨的語句加以調(diào)用,必須作為表達式或表達式中的一部分,再配以其他的語法成分構(gòu)成語句。必須給參數(shù)加上括號,當調(diào)用無參函數(shù),括號可以缺省。例7-1,求公約數(shù)Private Sub Command1_Click()Dim x As Integer, y
40、As Integerx = CInt(Text1):y = CInt(Text2):Label1 = gcd(x, y)End SubPrivate Function gcd(ByVal m As Integer, ByVal n As Integer)Dim r As Integerr = m Mod nDo While r <> 0 m = n: n = r: r = m Mod nLoopgcd = nEnd FunctionPrivate Function fun(s As String) As StringDim s1 As String, i%For i = 1 To
41、Len(s) s1 = UCase(Mid(s, i, 1) + s1Next ifun = s1End Function53 Sub過程(1)Sub過程的建立Private | PublicStatic Sub 子程序過程名(參數(shù)列表) 局部變量和常量聲明:語句塊:Exit Sub:語句塊End Sub只要能用函數(shù)過程定義的,肯定能用子過程定義;反之不一定。通常當該過程具有一個返回值時,用函數(shù)過程更直觀;當過程有多個返回值時,一般用設(shè)置多個按地址傳遞的參數(shù)的子程序過程來實現(xiàn)。(2)調(diào)用Sub過程Call 子程序過程名(實參列表)把過程名作為一個語句來使用:過程名 實參1,實參2,過程名與第一
42、個實參之間要有一個空格進行分隔;不需要關(guān)鍵字Call;實參列表不需要加括號。例7-2,求兩正數(shù)間的素數(shù)。54 參數(shù)傳送、變量作用域541 按引用、按值的參數(shù)傳送例7-3,判斷閏年。Private Sub Form_Click()Dim x%, y%:Cls: x = 5: y = 20:Print "實參原值: ", x, yCall change1(x, y):Print "按值調(diào)用后:", x, y:x = 5: y = 20Call change2(x, y):Print "按引用調(diào)用后", x, yEnd SubPrivate
43、 Sub change1(ByVal m%, ByVal n%)m = m + 1:n = n * 2End SubPrivate Sub change2(ByRef m%, ByRef n%)m = m + 1:n = n * 2End Sub542 不定數(shù)量參數(shù)Private Sub Command2_Click()Dim y%:ClsCall f5(y, 1, 10, 100):Print yCall f5(y, 10, 20, 30, 40, 50):Print yEnd SubPrivate Sub f5(s%, ParamArray a() '不定數(shù)量形參:放在最后;變體數(shù)
44、組;用ParamArrayDim x, t% For Each x In a t = t + x * xNext xs = tEnd Sub543 作用域Option ExplicitPublic x%:Dim z%z為Form1窗體(模塊)級變量Private Sub Command1_Click()Call temp3:Call temp4End SubPrivate Sub temp3()Dim a%:a = 10:z = z + a:Print a, zEnd SubPrivate Sub temp4()Dim a%:a = 2:z = z * a:Print a, zEnd SubP
45、rivate Sub Form_Click()Cls:x = x + 1:Print "單擊次數(shù)" x:Load Form2: Form2.ShowEnd Sub在form2的按鈕上,調(diào)用Form1窗體的全局變量xPrivate Sub Command1_Click()Form1.x = Form1.x + 100:Print "單擊了form2中的按鈕" Form1.xEnd Sub例7-4,求和。544 遞歸求最大公約數(shù)Private Sub Command2_Click()a = gcd(126, 12):Print aEnd SubPrivate
46、 Function gcd(p&, q&) As LongIf q Mod p = 0 Then gcd = pElse gcd = gcd(q, p Mod q)End IfEnd Function例7-5,求階乘。第六章 常用控件、界面 基本要求 1)重點掌握單選按鈕、復(fù)選框、框架、列表框、組合框、滾動條等控件的使用。1)重點掌握菜單、工具欄的制作過程。2)學(xué)會設(shè)計簡單的窗口界面,并編寫不太復(fù)雜的應(yīng)用程序。基本內(nèi)容61常用控件611 單選按鈕、復(fù)選框、框架單選按鈕(OptionButton)又稱選項按鈕,用來顯示一個可以打開或關(guān)閉的選項,一般成組出現(xiàn),用戶每次只能在一組單選
47、按鈕中選擇其一。其默認名稱為OptionN(N為1,2,3)。復(fù)選框的常用屬性和單選按鈕的常用屬性大致相同, Alignment屬性用來設(shè)置單選按鈕標題的對齊方式。當值為0時,為默認值,標題在控件對象的右側(cè);當值為1時,標題在控件對象的左側(cè)。 Value屬性用來表示單選按鈕的狀態(tài)。當值為True,表明該按鈕處于選中狀態(tài),按鈕的圓圈中有點;當值為False,則表明沒被選中,按鈕的圓圈中沒有點。復(fù)選框的Value屬性可以取0、1和2,分別表示該復(fù)選框未選中、選中和變灰(暫時不能訪問)3種狀態(tài)。框架(Frame)是個容器控件,常用于將其他控件對象按功能分組,既實現(xiàn)了界面上功能的分割,又保證了界面的整
48、齊美觀,默認名稱為FrameN(N為1,2,3)。例8-1,修改字體顏色。 612 列表框、組合框常用屬性MultiSelect0值禁止多選ListIndex被選中項索引號List列表項內(nèi)容ListCount列表項數(shù)目Text被選中項內(nèi)容Selected成員是否選中Style外觀類型Sorted列表項排序方式List是個字符型數(shù)組,存放列表框、組合框的選項。List1list(0)=“北京”、list1list(4)=“常州”。當選中“北京”時,listindex=0, List1Text=“北京”,List1list(listindex)=“北京”,List1Selected(0)=True
49、。選中最后項時listindex= ListCount-1,未選任何項時listindex=-1。方法 AddItem方法 用來向列表框中增加項目。調(diào)用格式:對象名. AddItem 列表項內(nèi)容 ,插入位置下標 RemoveItem方法 用于刪除指定位置的列表項。調(diào)用格式:對象名. RemoveItem 刪除項下標Clear方法 刪除或清空列表框和組合框中所有的列表項。調(diào)用格式:對象名. Clear 例8-2,裝機清單。613 滾動條、圖形控件 常用屬性Name滾動條名稱SmallChange滑塊滾動的小增量值LargeChange滑塊滾動的大增量值Max滾動條的最大值Min滾動條的最小值Value當前滑塊的位置事件(1)Change事件 該事件在滾動后發(fā)生,只要滑塊位置發(fā)生變化,即當
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘭州城市學(xué)院《外國文學(xué)經(jīng)典作品賞析》2023-2024學(xué)年第二學(xué)期期末試卷
- 邯鄲市重點中學(xué)2025屆高三第二學(xué)期第二次月考試卷英語試題含解析
- 福建廈門雙十中學(xué)2025屆高三下學(xué)期期末質(zhì)量抽測數(shù)學(xué)試題試卷含解析
- 2025年云南省通海二中高考化學(xué)試題考前最后一卷預(yù)測卷(二)含解析
- 綏化學(xué)院《建筑項目招投標與合同管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年杜郎口中學(xué)高三下學(xué)期期末五校聯(lián)考試題含解析
- 商丘職業(yè)技術(shù)學(xué)院《藥物基因組學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 新疆輕工職業(yè)技術(shù)學(xué)院《集散控制系統(tǒng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 電子科技大學(xué)《模擬電子技術(shù)Ⅱ》2023-2024學(xué)年第二學(xué)期期末試卷
- 天津開發(fā)區(qū)職業(yè)技術(shù)學(xué)院《體育活動組織與策劃》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年超高功率大噸位電弧爐項目建議書
- 寵物殯葬創(chuàng)新創(chuàng)業(yè)
- 2025年第三屆天揚杯建筑業(yè)財稅知識競賽題庫附答案(801-900題)
- 2024年黑龍江出版集團招聘筆試真題
- 2024年4月27日浙江省事業(yè)單位招聘考試《職業(yè)能力傾向測驗》真題及答案
- 【初中歷史】遼宋夏金元時期經(jīng)濟的繁榮 課件 2024-2025學(xué)年統(tǒng)編版七年級歷史下冊
- 2025-2030中國橄欖球行業(yè)市場全景調(diào)研及投資價值評估咨詢報告
- 砌體結(jié)構(gòu)檢測試題及答案
- DB32T 5061.1-2025 中小學(xué)生健康管理技術(shù)規(guī)范 第1部分:心理健康
- 2025年寧波職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫審定版
- 2025年洛陽科技職業(yè)學(xué)院單招職業(yè)技能測試題庫及答案(考點梳理)
評論
0/150
提交評論