![信息系統(tǒng)與數(shù)據(jù)庫(kù)技術(shù):6_VB.NET基礎(chǔ)_第1頁(yè)](http://file4.renrendoc.com/view/96b247634d4705a2c1299f8a2c696707/96b247634d4705a2c1299f8a2c6967071.gif)
![信息系統(tǒng)與數(shù)據(jù)庫(kù)技術(shù):6_VB.NET基礎(chǔ)_第2頁(yè)](http://file4.renrendoc.com/view/96b247634d4705a2c1299f8a2c696707/96b247634d4705a2c1299f8a2c6967072.gif)
![信息系統(tǒng)與數(shù)據(jù)庫(kù)技術(shù):6_VB.NET基礎(chǔ)_第3頁(yè)](http://file4.renrendoc.com/view/96b247634d4705a2c1299f8a2c696707/96b247634d4705a2c1299f8a2c6967073.gif)
![信息系統(tǒng)與數(shù)據(jù)庫(kù)技術(shù):6_VB.NET基礎(chǔ)_第4頁(yè)](http://file4.renrendoc.com/view/96b247634d4705a2c1299f8a2c696707/96b247634d4705a2c1299f8a2c6967074.gif)
![信息系統(tǒng)與數(shù)據(jù)庫(kù)技術(shù):6_VB.NET基礎(chǔ)_第5頁(yè)](http://file4.renrendoc.com/view/96b247634d4705a2c1299f8a2c696707/96b247634d4705a2c1299f8a2c6967075.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第6章 VB.Net程序設(shè)計(jì)基礎(chǔ) Visual Studio.NET是Microsoft公司針對(duì)互聯(lián)網(wǎng)推出的新一代可視化開發(fā)工具。Visual Basic.NET就是支持該結(jié)構(gòu)的編程語(yǔ)言之一。 Visual Basic.NET :面向?qū)ο蟮目梢暬绦蛟O(shè)計(jì)語(yǔ)言事件驅(qū)動(dòng)程序 基于Windows程序的基本特點(diǎn)。面向?qū)ο缶幊蹋∣OP) 將特征屬性抽象為變量,行為方法編寫為函數(shù)。用戶界面 窗體和控件、菜單等可視化應(yīng)用程序集成開發(fā)環(huán)境 編輯、調(diào)試、運(yùn)行VB.NET的程序開發(fā)的特點(diǎn)解決方案:在.NET環(huán)境中,開發(fā)工作以解決方案的形式進(jìn)行組織,每個(gè)解決方案包含一個(gè)或多個(gè)項(xiàng)目.項(xiàng)目:每個(gè)項(xiàng)目可以執(zhí)行一項(xiàng)不同的任
2、務(wù),它由VB.NET代碼、圖片和文檔等相關(guān)文件的構(gòu)成。編程的第一步是新建一個(gè)項(xiàng)目。 6.1.1 VB.NET簡(jiǎn)介 6.1.2 VB.NET可視化集成開發(fā)環(huán)境 (1)啟動(dòng)VB.NET: 開始/程序/Microsoft Visual Studio.NET2003“起始頁(yè)”區(qū)域 :顯示了最近打開過(guò)的項(xiàng)目鏈接及其修改日期 解決方案資源管理器子窗口 新建一個(gè)項(xiàng)目的操作步驟: (2)單擊“起始頁(yè)”中間區(qū)域中的“新建項(xiàng)目”或選擇“文件/新建/項(xiàng)目” (3) 在“新建項(xiàng)目”對(duì)話框中,在“項(xiàng)目類型”列表框中選擇“Visual Basic項(xiàng)目”;在“模板”列表框中選擇“Windows應(yīng)用程序”模板;在“名稱”文本
3、框中輸入項(xiàng)目的名稱,這里輸入“project1”,并在其下方的“位置”列表框中為項(xiàng)目選定一個(gè)保存路徑。 (4)單擊“確定”按鈕,完成了“project1”項(xiàng)目的新建,進(jìn)入了.NET開發(fā)環(huán)境。 控件工具箱 解決方案資源管理器 屬性窗口 設(shè)計(jì)窗口 雙擊窗體進(jìn)入代碼窗口6.1.3 VB.NET中面向?qū)ο蟮幕靖拍?1對(duì)象和類 (1)對(duì)象:一個(gè)實(shí)體的抽象描述,包括屬性和方法,可以識(shí)別并響應(yīng)事件。屬性: 對(duì)象中的數(shù)據(jù),用來(lái)描述和反映對(duì)象特征的參數(shù)。方法: 對(duì)象中的程序過(guò)程, 可執(zhí)行的功能,作為方法供用戶直接調(diào)用。事件: 用戶或操作系統(tǒng)執(zhí)行的操作,如單擊控件、鼠標(biāo)移動(dòng)、鍵盤按下等。 在VB.NET程序設(shè)計(jì)
4、語(yǔ)言中,對(duì)象是程序設(shè)計(jì)的基本單元,也是設(shè)計(jì)時(shí)的核心。 (2) 類 :具有相同操作功能和相同屬性的對(duì)象的集合和抽象。 在VB.NET中,工具箱內(nèi)列出的各種控件都是系統(tǒng)設(shè)計(jì)好的標(biāo)準(zhǔn)控件類。 當(dāng)把控件設(shè)置在窗體上后,才把控件類實(shí)例化為對(duì)象,即創(chuàng)建了一個(gè)控件對(duì)象。例如:命令按鈕(Button)類,它集中了命令按鈕對(duì)象的共有特征。在把“命令按鈕”畫到窗體上之前,“命令按鈕”控件對(duì)象是不存在的,只有當(dāng)把“命令按鈕”控件設(shè)置在窗體上后,才把類實(shí)例化為對(duì)象,即創(chuàng)建了一個(gè)命令按鈕控件對(duì)象。設(shè)置對(duì)象屬性的二種方法:(1)設(shè)計(jì)階段:在屬性窗口中設(shè)置(2)在程序代碼中設(shè)置。格式如下: 對(duì)象名.屬性=屬性值 2對(duì)象的屬
5、性、方法和事件 (1)對(duì)象屬性:用以描述和反映對(duì)象特征的參數(shù)。例如:Button1.Text=”打開” /設(shè)置一個(gè)對(duì)象名為“Button1”命令按鈕的Text屬性為“打開” Button1.ForeColor=Color.Red /設(shè)置“Button1”命令按鈕的字體顏色為紅色調(diào)用格式如下: 對(duì)象名.方法 (參數(shù)名表) 注:方括號(hào)內(nèi)內(nèi)容可省略例如: Text1.Focus() /用該方法把光標(biāo)置于Text1文本框上。(2)對(duì)象方法:描述了該對(duì)象能執(zhí)行的動(dòng)作。 是在對(duì)象上可執(zhí)行的動(dòng)作。是由VB系統(tǒng)已設(shè)計(jì)好的過(guò)程、函數(shù),可供用戶直接調(diào)用。(3)對(duì)象事件 :由VB.NET預(yù)先設(shè)置好的、能夠被對(duì)象設(shè)別
6、的動(dòng)作。 例如單擊(Click)、DblClick(雙擊)等 。事件過(guò)程:事件的處理程序。格式如下:Private Sub 對(duì)象名稱_事件名稱(對(duì)象引用,事件信息)Handles 事件處理程序 事件過(guò)程代碼 End Sub 其中,“對(duì)象名稱”是對(duì)象的Name屬性,“事件名稱”是該對(duì)象能夠識(shí)別的事件,是VB.NET預(yù)先定義好并賦于該對(duì)象的。 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Button1.Text = 打開 But
7、ton1.ForeColor = Color.Red End Sub6.1.4 創(chuàng)建一個(gè)簡(jiǎn)單的應(yīng)用程序?qū)嵗?.建立程序窗體;2.在程序窗體上設(shè)置控件對(duì)象;3.確定控件對(duì)象的屬性;4.編寫對(duì)象的事件驅(qū)動(dòng)代碼。5.程序運(yùn)行和調(diào)試6.保存文件VB.NET程序的基本組成文件包括:解決方案文件(.sln)窗體文件(.frm)Basic模塊文件(.vb)資源文件(.resx) 每創(chuàng)建一個(gè)解決方案會(huì)生成一個(gè)文件夾,所有這些文件都在該文件夾下。 如要拷貝所開發(fā)程序,應(yīng)該拷貝整個(gè)文件夾。【例6-1】設(shè)計(jì)一個(gè)小程序。窗體的標(biāo)題為“VB.NET應(yīng)用程序設(shè)計(jì)示例”,在窗體上設(shè)置一個(gè)文本框顯示“您好,歡迎使用VB.NE
8、T”,兩個(gè)命令按鈕【下一步】和【結(jié)束】,單擊【下一步】按鈕時(shí),文本框中顯示的內(nèi)容改變?yōu)椤癡B.NET簡(jiǎn)單易學(xué),功能強(qiáng)大”,單擊【結(jié)束】按鈕時(shí),程序結(jié)束。程序運(yùn)行界面如圖6-5和6-6所示。 6.2 VB.NET基本語(yǔ)法 VB.NET作為一種程序設(shè)計(jì)語(yǔ)言同樣規(guī)定了編寫程序所必須的一些語(yǔ)言元素如常量、變量、基本語(yǔ)句、函數(shù)和過(guò)程等。 6.2.1數(shù)據(jù)類型、常量和變量1數(shù)據(jù)類型 數(shù)據(jù)類型確定數(shù)據(jù)在內(nèi)存中的存儲(chǔ)容量和取值范圍等。VB.NET的基本數(shù)據(jù)類型可分為數(shù)值型、字符型、字符串型、邏輯型、日期型、對(duì)象型等。 表6-1 數(shù)值型數(shù)據(jù)類型數(shù)據(jù)類型類型符存儲(chǔ)空間范圍Byte(字節(jié)型)1個(gè)字節(jié)0 到 255(無(wú)
9、符號(hào))Short(整型)2個(gè)字節(jié)-32 768 到 32 767Integer(整型)%4個(gè)字節(jié)-2 147 483 648 到2 147 483 647Long(長(zhǎng)整數(shù))&8個(gè)字節(jié)-9 223 372 036 854 775 808 到 9 223 372 036 854 775 807Single(單精度浮點(diǎn)數(shù))!4個(gè)字節(jié)負(fù)數(shù):-3.402 823E+38到 -1.401 298E-45;正數(shù):1.401 298E-45到3.402 823E+38Double(雙精度浮點(diǎn)數(shù))#8個(gè)字節(jié)負(fù)數(shù):-1.797 693 134 862 31E308到 -4.940 656 458 412 47E-
10、324;正數(shù):4.940 656 458 412 47E-324到1.797 693 134 862 31E308Decimal(數(shù)值型)16個(gè)字節(jié)0 到 79 228 162 514 264 337 593 543 950 335不帶小數(shù)點(diǎn)的數(shù);0 到 7.922 816 251 426 433 759 354 395 033 5帶28位小數(shù)的數(shù)表6-2 其他數(shù)據(jù)類型數(shù)據(jù)類型類型符存儲(chǔ)空間范圍Boolean(邏輯型)2個(gè)字節(jié)True或FalseChar(字符型)2個(gè)字節(jié)一個(gè)字符Date(日期型)8個(gè)字節(jié)0001年1月1日 0:00:00到9999年12月31日 11:59:59Object(
11、對(duì)象型)4個(gè)字節(jié)任何類型數(shù)據(jù)都可存儲(chǔ)在該類型的變量中String(字符串)$實(shí)際可用內(nèi)存空間0到大約20億個(gè)字符說(shuō)明:1)Date類型用于表示日期或時(shí)間;常量需要用#括起來(lái),格式為:#mm/dd/yyyy#,如:#02/15/2007#。2)Char類型只能接受一個(gè)用雙引號(hào)括起來(lái)的字符。String類型表示字符串。字符串是用雙引號(hào)括起來(lái)的字符序列,如ABC。String類型的缺省規(guī)定為可變長(zhǎng)度的字符串,即在對(duì)字符串操作時(shí),其長(zhǎng)度可增可減。 2常量和變量(1)常量和變量的命名規(guī)則1)必須以英文字母(或漢字)開頭,后跟字母、漢字、數(shù)字或下劃線。字母大小寫意義相同。2)常量名、變量名的長(zhǎng)度不能超過(guò)2
12、55個(gè)字符。3)在同一個(gè)有效范圍內(nèi),每個(gè)常量或變量的名稱必須唯一。4)不能使用VB.NET關(guān)鍵字作為常量和變量的名字。 例如: Dim x As Double 聲明雙精度型變量x Dim m%, v 聲明整型變量m和對(duì)象型變量v,如缺省類型則為Object Dim f As Boolean=False 聲明邏輯型變量f,并設(shè)置初值False (2) 變量聲明 基本語(yǔ)法格式: Dim 變量名類型說(shuō)明符|As 類型 (3)常量 VB.NET中常量有兩種形式:直接常量和符號(hào)常量。例如:12、-1.23、a為直接常量。 符號(hào)常量 :用一個(gè)標(biāo)識(shí)符來(lái)代表一個(gè)數(shù)值或字符串。定義符號(hào)常量的格式如下: Cons
13、t常量名As數(shù)據(jù)類型=表達(dá)式例如:Const UserName As String=John 符號(hào)常量UserName是字符串常量Const Max As Integer=100 符號(hào)常量Max是整型常量 6.2.2 運(yùn)算符和表達(dá)式 1運(yùn)算符 (1)算術(shù)運(yùn)算符 (乘方運(yùn)算符)、*(乘法運(yùn)算符)、/(除法運(yùn)算符)、(整除運(yùn)算符)、Mod(模運(yùn)算符)、+(加法運(yùn)算符或正值運(yùn)算符)、-(減法運(yùn)算符或負(fù)值運(yùn)算符)、&(連接運(yùn)算符) 例如:196.7=2 19 Mod 6=1 19 Mod 6=1 23.67 Mod 7.88=0“abcd”+“efg“=”abcdefg“ ”123” + 123 =2
14、46123 & abcd“=123abcd “abc” + 123 (不允許) (2)復(fù)合賦值運(yùn)算符在賦值運(yùn)算符(=)之前加上一些算術(shù)運(yùn)算符,可以構(gòu)成復(fù)合的賦值運(yùn)算符。例如:a+=3 等價(jià)于a=a+3 “+=”稱為“自反加賦值運(yùn)算符” x*=y+8 等價(jià)于x=x*(y+8) “*=”稱為“自反乘賦值運(yùn)算符” m=2 等價(jià)于m=m2 “=”稱為“自反指數(shù)賦值運(yùn)算符”VB.NET中還可使用以下的復(fù)合賦值運(yùn)算符:-=(自反減賦值運(yùn)算符) /=(自反浮點(diǎn)除賦值運(yùn)算符)=(自反整除賦值運(yùn)算符) &=(自反字符串連接賦值運(yùn)算符) (3)關(guān)系運(yùn)算符 (大于運(yùn)算符)、(小于運(yùn)算符)、=(等于運(yùn)算符)、(不等于
15、運(yùn)算符)=(大于等于運(yùn)算符)、 b Then 如果ab,交換a和b的值 t = a a = b b = t End If MsgBox(較小數(shù) & a & & 較大數(shù) & b, , 從小到大排序) 報(bào)告結(jié)果End Sub圖6-13 兩數(shù)排序結(jié)果或:If a b Then t = a:a = b:b = t 2)If語(yǔ)句格式2 If 條件 Then 語(yǔ)句1 Else 語(yǔ)句2 EndIf或:If 條件 Then 語(yǔ)句1 Else 語(yǔ)句2圖6-14 雙分支語(yǔ)句的流程圖條件表達(dá)式語(yǔ)句塊1語(yǔ)句塊2TrueFalse【例】計(jì)算分段函數(shù)的值程序1:Dim a, x, y As Singlea = Val(I
16、nputBox(請(qǐng)輸入a 的值, 計(jì)算分段函數(shù))x = Val(InputBox(請(qǐng)輸入x 的值, 計(jì)算分段函數(shù))If x -a) And (x a / 2 Then y = xMsgBox (a= & a & x= & x & y= & y)程序2If x -a) And (x a / 2 Then y = xEnd IfMsgBox (a= & a & x= & x & y= & y)3)多分支If語(yǔ)句If 條件表達(dá)式1 Then 語(yǔ)句塊1ElseIf 條件表達(dá)式2 Then 語(yǔ)句塊2 Else 語(yǔ)句塊n圖6-15 多分支語(yǔ)句的流程圖不管有幾個(gè)分支,當(dāng)某條件滿足,執(zhí)行相應(yīng)的語(yǔ)句塊,其余分支
17、不再執(zhí)行。4)If語(yǔ)句的嵌套If語(yǔ)句的嵌套是指If語(yǔ)句中的語(yǔ)句塊又包含If語(yǔ)句。語(yǔ)句格式如下;If 條件表達(dá)式1 Then If 條件表達(dá)式11 Then 語(yǔ)句塊1 EndIfEndIf(2)Select Case語(yǔ)句 Select Case語(yǔ)句也稱為情況語(yǔ)句,它可以用來(lái)實(shí)現(xiàn)多分支選擇結(jié)構(gòu)程序。 語(yǔ)句格式:Select Case 表達(dá)式 Case 表達(dá)式列表1 語(yǔ)句塊1 Case 表達(dá)式列表2 語(yǔ)句塊2 Case Else 語(yǔ)句塊nEnd SelectCase子句的表達(dá)式可以由以下幾種形式構(gòu)成: 表達(dá)式1 to 表達(dá)式2: Case 1 To 5 表達(dá)式值在1到5范圍內(nèi)。Is運(yùn)算表達(dá)式:Cas
18、e Is5 表達(dá)式的值大于5的值。枚舉常量:Case “q”, “Q” 表達(dá)式的值等于”q”或”Q”。多種表達(dá)混合:Case 1 To 5, IsMin 表達(dá)式的值在1到5或大于Min的值。測(cè)試表達(dá)式可以是變量、函數(shù)、數(shù)值表達(dá)式、字符串表達(dá)式或邏輯表達(dá)式。Case子句中表達(dá)式列表的數(shù)據(jù)類型應(yīng)當(dāng)與表達(dá)式的數(shù)據(jù)類型一致。【例6-3】從鍵盤輸入一個(gè)字符,判斷它是大寫字母、小寫字母、數(shù)字字符還是其他字符。本例使用標(biāo)簽Label1報(bào)告結(jié)果,首先在窗體上添加一個(gè)Label1。 Private Sub Form1_Click() Handles MyBase.Click Dim ch As Charch =
19、 InputBox(請(qǐng)輸入字符, 字符判斷, , 200, 200)Select Case chCase A To ZLabel1.Text = ch + 是大寫字母 Case a To zLabel1.Text = ch + 是小寫字母Case 0 To 9Label1.Text = ch + 是數(shù)字字符Case ElseLabel1.Text = ch + 是其他字符End SelectEnd Sub 3循環(huán)結(jié)構(gòu)VB.NET提供了兩種類型的循環(huán)控制:計(jì)數(shù)循環(huán)控制與條件循環(huán)控制。 For I=1 To 10 Step 1 TextBox1.Text = TextBox1.Text & I &
20、 Next I一般用于循環(huán)次數(shù)已知的情況(1)計(jì)數(shù)循環(huán)控制語(yǔ)句(For Next語(yǔ)句)語(yǔ)法格式:For 循環(huán)變量 = 初值To 終值 Step 步長(zhǎng)值 語(yǔ)句塊 Exit For 語(yǔ)句塊Next 循環(huán)變量 0 初值終值 =1 時(shí),可省略終值=0 死循環(huán)步長(zhǎng)循環(huán)次數(shù)圖6-17 For循環(huán)語(yǔ)句流程圖說(shuō)明: (1)循環(huán)變量必須是數(shù)值型變量。(2)初值、終值、步長(zhǎng)值可以是表達(dá)式。類型必須與循環(huán)變量的類型相同。(3)步長(zhǎng)值可以是正數(shù)(初值小于終值)或負(fù)數(shù)(初值大于終值)。缺省值為1。(4)Exit For:退出循環(huán),執(zhí)行Next語(yǔ)句的后繼語(yǔ)句。(5)For與Next中間的語(yǔ)句稱為循環(huán)體,可以是多個(gè)語(yǔ)句。P
21、rivate Sub Form1_Click() Handles MyBase.ClickDim s As Single, num As Integer, smax As Integer, smin As Integer s讀入成績(jī), num學(xué)號(hào), smax最高分, smin最低分Dim nummax As Integer, nummin As Integer nummax最高分學(xué)號(hào), nummin最低分學(xué)號(hào)Dim sum As Integer, ave As Single, ch As String sum總分, ave平均分, ch為InputBox提示smax = -1 : smin =
22、 101 最高分賦值為-1, 最低分賦值為101For num = 1 To 10 ch = 請(qǐng)輸入第 & num & 個(gè)學(xué)生的成績(jī) s = InputBox(ch) : 輸入學(xué)生成績(jī) sum = sum + s 學(xué)生成績(jī)累加 If s smax Then smax = s : nummax = num 保留最高分及對(duì)應(yīng)學(xué)號(hào) If s smin Then smin = s : nummin = num 保留最低分及對(duì)應(yīng)學(xué)號(hào)Next numave=sum / (num - 1) 計(jì)算平均成績(jī), 注意學(xué)生總數(shù)為num-1MsgBox(最高分= & smax & 學(xué)號(hào)= & nummax & vbC
23、rLf & _ vbCrLf是回車換行符最低分= & smin & 學(xué)號(hào)= & nummin & vbCrLf & _ vbCrLf=Chr(13)+Chr(10) 總分= & sum & 平均分= & ave) End Sub【例6-4】學(xué)生分?jǐn)?shù)統(tǒng)計(jì)。通過(guò)鍵盤輸入10個(gè)學(xué)生某一門課程的成績(jī),如69,70,80,99,78。每個(gè)數(shù)據(jù)按前后次序?qū)?yīng)學(xué)生的學(xué)號(hào),即:第一個(gè)數(shù)據(jù)是1號(hào)學(xué)生的成績(jī),第二個(gè)數(shù)據(jù)是2號(hào)學(xué)生的成績(jī),最后一個(gè)數(shù)據(jù)是10號(hào)學(xué)生的成績(jī)。試編寫一程序統(tǒng)計(jì)該課程的總分、平均分、最高分及對(duì)應(yīng)的學(xué)號(hào)、最低分及對(duì)應(yīng)的學(xué)號(hào)。 (2)條件循環(huán)控制語(yǔ)句Do WhileLoop和Do UntilLo
24、op語(yǔ)句Do WhileLoopDo UntilLoop語(yǔ)句格式Do While條件 語(yǔ)句塊 Exit Do 語(yǔ)句塊LoopDo Until條件 語(yǔ)句塊 Exit Do 語(yǔ)句塊Loop執(zhí)行流程舉例(密碼檢驗(yàn))PW=InputBox(輸入密碼) Do While PWABCD“ PW=InputBox(輸入密碼)LoopPW=InputBox(輸入密碼)Do Until PW=ABCD“ PW=InputBox(輸入密碼)Loop (2)條件循環(huán)控制語(yǔ)句2)DoLoop While和DoLoop Until語(yǔ)句Do WhileLoopDo UntilLoop語(yǔ)句格式Do 語(yǔ)句塊 Exit Do
25、語(yǔ)句塊Loop While條件 Do 語(yǔ)句塊 Exit Do 語(yǔ)句塊Loop Until條件 執(zhí)行流程舉例(密碼檢驗(yàn))Do PW=InputBox(輸入密碼)Loop While PWABCD Do PW=InputBox(輸入密碼)Loop Until PW=ABCD 【例6-5】編寫一個(gè)譯碼程序,將一個(gè)由大寫字母組成的英語(yǔ)句子譯成數(shù)字代碼。譯碼規(guī)則是:以數(shù)字1代替字母A、數(shù)字2代替字母B、數(shù)字26代替字母Z,如遇空格則輸出*號(hào)。英語(yǔ)句子以句號(hào)結(jié)束。 Private Sub Form1_Click() Handles MyBase.Click Dim Code As Integer, Let
26、ter As String TextBox1.Text = Letter = InputBox(請(qǐng)輸入一個(gè)大寫字母(輸入小數(shù)點(diǎn)結(jié)束程序):) Do While Letter . If Letter = Then TextBox1.Text = TextBox1.Text & * & Space(3) Space(3)是3個(gè)空格字符串 Else Code = Asc(Letter) - Asc(A) + 1 TextBox1.Text = TextBox1.Text & Code & Space(3) End If Letter = InputBox(請(qǐng)輸入一個(gè)大寫字母(輸入小數(shù)點(diǎn)結(jié)束程序):)
27、 Loop TextBox1.Text = TextBox1.Text & . End Sub 譯碼算法如下: Code=ASC(Letter)-ASC(A)+1 (3)循環(huán)嵌套 所謂循環(huán)嵌套就是在一個(gè)循環(huán)結(jié)構(gòu)的循環(huán)體內(nèi)包含另一個(gè)或多個(gè)循環(huán)結(jié)構(gòu),也稱為多重循環(huán)。 對(duì)于循環(huán)的嵌套,要注意以下事項(xiàng):1)內(nèi)循環(huán)變量與外循環(huán)變量不能同名;2)外循環(huán)必須完全包含內(nèi)循環(huán),不能交叉;3)不能從循環(huán)體外轉(zhuǎn)向循環(huán)體內(nèi),也不能從外循環(huán)轉(zhuǎn)向內(nèi)循環(huán), 反之則可以?!纠?-6】編寫一個(gè)程序輸出九九乘法表。該程序窗體界面有1個(gè)命令按鈕Button1和1個(gè)文本框TextBox1,需將TextBox1的Multiline屬性
28、設(shè)置為True,并拖至足夠大。 For m = 1 To 9 For n = 1 To 9 k = m * n If k = 10 Then TextBox1.Text = TextBox1.Text & k & Else TextBox1.Text = TextBox1.Text & k & EndIf Next n TextBox1.Text = TextBox1.Text & vbCrLf Next m外重循環(huán)執(zhí)行一次,內(nèi)重循環(huán)執(zhí)行一遍。6.2.6 數(shù)組 1數(shù)組的定義 一維數(shù)組定義格式: Dim 數(shù)組名(下標(biāo)上界)As 類型名稱注意:下標(biāo)下界為0,一維數(shù)組的大小為上界+1。 無(wú)數(shù)據(jù)類型表
29、示Object類。例如:Dim A (10) As Integer 定義了一個(gè)一維數(shù)組,該數(shù)組的名字為A,類型為Integer(整型),該數(shù)組由11個(gè)數(shù)組元素組成,即A (0) A (10))二維數(shù)組定義格式:Dim 數(shù)組名(第一維下標(biāo)上界,第二維下標(biāo)上界)As 類型名稱例如:Dim Page(1,2) As Integer定義了一個(gè)二維數(shù)組,該數(shù)組的名字為Page,類型為Integer(整型),共6個(gè)數(shù)組元素,分別是:Page(0,0)、Page(0,1)、Page(0,2)Page(1,0)、Page(1,1)、Page(1,2) 2數(shù)組的初始化和引用 (1)數(shù)組的初始化 1)一維數(shù)組元素
30、初始化格式如下: Dim 數(shù)組名( )As 類型名稱=值1,值2,值n注意:VB.NET規(guī)定不允許對(duì)指定上界的數(shù)組進(jìn)行初始化,所以圓括號(hào)中必須為空,根據(jù)實(shí)際初值的個(gè)數(shù)確定數(shù)組的上界。 例如:Dim Season() As String = 春天,夏天,秋天,冬天定義了一個(gè)字符串?dāng)?shù)組Season該數(shù)組有4個(gè)初值,分別為: Season(0)=“春天”、Season(1)=“夏天”、 Season(2)=秋天、Season(3)=冬天2)二維數(shù)組元素初始化格式如下:Dim 數(shù)組名(,)As 類型名稱=第一行值,第二行值,第n行值例如:Dim AI(,) As Integer=1,2,3,4,5,6
31、定義了一個(gè)二維數(shù)組AI,內(nèi)層花括號(hào)的個(gè)數(shù)表示數(shù)組的行數(shù),每個(gè)內(nèi)層花括號(hào)中數(shù)值個(gè)數(shù)表示數(shù)組的列數(shù),該語(yǔ)句定義了一個(gè)2行3列的數(shù)組,即AI(2,3)。各元素的值分別為: AI(0,0)=1 AI(0,1)=2 AI(0,2)=3 AI(1,0)=4 AI(1,1)=5 AI(1,2)=6 (2)數(shù)組元素的引用 只能逐個(gè)引用數(shù)組元素而不能一次引用整個(gè)數(shù)組,數(shù)組元素的表示形式如下。 數(shù)組名(下標(biāo)1,下標(biāo)2) 其中,下標(biāo)可以是整型常量或整型表達(dá)式,例如: A(5)、Season(2)、AI(1,1)、 AI(1+1,2)。數(shù)組元素可以出現(xiàn)在表達(dá)式中,也可以被賦值。 【例6-7】設(shè)計(jì)一個(gè)應(yīng)用程序,使用數(shù)組
32、對(duì)新進(jìn)榜歌曲按輸入順序逆序排列并顯示結(jié)果。該程序窗體界面有2個(gè)標(biāo)簽Label1和Label2、1個(gè)命令按鈕Button1 。 Private Sub Button1_Click() Handles Button1.Click Const n = 6 聲明常量,歌曲數(shù)目為6首 Dim i As Integer, j As Integer i為循環(huán)控制變量, i和j為數(shù)組下標(biāo)變量 Dim t As String t用于逆序排列的中間變量 Dim Song(n - 1) As String 聲明字符串?dāng)?shù)組變量,下標(biāo)上界為n-1 為數(shù)組元素賦值,建立歌曲榜單,并顯示在標(biāo)簽Label1上 For i =
33、 0 To n - 1 Song(i) = InputBox(請(qǐng)輸入歌曲名稱:) Label1.Text = Label1.Text & & Song(i)圖6-19程序運(yùn)行結(jié)果 Next i 采用首尾元素對(duì)換完成逆序排列 For i = 0 To (n - 1) 2 j = n - 1 - i t = Song(i) Song(i) = Song(j) Song(j) = t Next i 在標(biāo)簽Label2上輸出逆序排列結(jié)果 For i = 0 To n - 1 Label2.Text = Label2.Text & & Song(i) Next iEnd Sub 【例6-8】編寫程序,要
34、求能輸入4名學(xué)生的英語(yǔ)、數(shù)學(xué)、政治、物理四門課的考試成績(jī)。計(jì)算并輸出每名學(xué)生的平均分。 Private Sub Form1_Click() Handles MyBase.Click Const StuNum = 4, CourseNum = 4 Dim StuGrade(StuNum - 1, CourseNum - 1) As Single StuGrade成績(jī)二維數(shù)組 Dim AveGrade(StuNum - 1) As Single AveGrade平均成績(jī)一維數(shù)組 Dim CurrentGrade As String Dim i As Integer, j As Integer, k
35、 As Integer TextBox1.Text = TextBox1.Text & 學(xué)號(hào) & 英語(yǔ) _圖6-20 程序運(yùn)行結(jié)果 & 數(shù)學(xué) & 政治 & 物理 & 平均 & vbCrLf For i = 0 To StuNum - 1 k = 0 TextBox1.Text = TextBox1.Text & i & For j = 0 To CourseNum - 1 輸入一個(gè)人各門課成績(jī), 并計(jì)算和,輸出成績(jī) CurrentGrade = 請(qǐng)輸入 & i + 1 & 號(hào)學(xué)生第 _ & j + 1 & 門課程的成績(jī) StuGrade(i, j) = InputBox(CurrentGrad
36、e) k = k + StuGrade(i, j) TextBox1.Text = TextBox1.Text & StuGrade(i, j) & Next j計(jì)算平均成績(jī)并輸出 AveGrade(i) = k / 4 TextBox1.Text = TextBox1.Text & AveGrade(i) & vbCrLf Next iEnd Sub 6.2.7 子程序過(guò)程與函數(shù)過(guò)程 通用過(guò)程分為兩類:子程序過(guò)程和函數(shù)過(guò)程。子程序過(guò)程又稱為Sub過(guò)程,函數(shù)過(guò)程稱為Function過(guò)程或自定義函數(shù)。Sub過(guò)程與自定義函數(shù)的區(qū)別在于:(1)過(guò)程較為靈活,可以帶參數(shù),也可以不帶參數(shù),而且不返回值。
37、(2)函數(shù)通常都要求帶參數(shù),并有返回值。 1Sub過(guò)程的定義和調(diào)用(1)Sub過(guò)程的定義定義Sub過(guò)程的格式如下:Private|Public Static Sub 過(guò)程名(形式參數(shù)表) 局部變量和常量聲明 語(yǔ)句塊 Exit Sub 語(yǔ)句塊EndSub過(guò)程必須以Sub開始 使用說(shuō)明:1)過(guò)程必須以Sub開始,EndSub結(jié)束。Public(默認(rèn))為全局(公有)過(guò)程,全局有效;Private 為局部(私有)過(guò)程,本模塊有效;Static為靜態(tài)過(guò)程(每次調(diào)用該過(guò)程后,都將保留其中的局部變量值)。2)形式參數(shù)(簡(jiǎn)稱形參)是過(guò)程與主程序(調(diào)用過(guò)程的程序)之間進(jìn)行數(shù)據(jù)傳遞的變量。多個(gè)參數(shù)之間用逗號(hào)分隔。
38、 形參有兩種類型,格式如下:ByVal | ByRef 參數(shù)名 () As 數(shù)據(jù)類型其中:ByVal表示該參數(shù)以傳值的方式傳遞數(shù)據(jù)(值傳遞)。ByRef表示以傳地址的方式傳遞數(shù)據(jù)。3)過(guò)程中說(shuō)明的變量和常量?jī)H在該過(guò)程中有效。4)Exit Sub表示退出過(guò)程,返回到調(diào)用過(guò)程的主程序的下一個(gè)語(yǔ)句繼續(xù)執(zhí)行。 (2)Sub過(guò)程的建立通用過(guò)程不屬于任何一個(gè)事件過(guò)程,因此不能用事件過(guò)程定義。通用過(guò)程可以在窗體、模塊或類中建立, 由程序員在程序代碼窗口直接輸入整個(gè)過(guò)程,包括框架。(3)Sub過(guò)程的調(diào)用Sub過(guò)程建立后,只有通過(guò)調(diào)用,Sub過(guò)程才能執(zhí)行。調(diào)用Sub過(guò)程的語(yǔ)句格式如下:Call 過(guò)程名(實(shí)在參數(shù)
39、表)過(guò)程調(diào)用時(shí)的參數(shù)稱為實(shí)在參數(shù)(簡(jiǎn)稱實(shí)參)。實(shí)在參數(shù)的個(gè)數(shù)、類型以及前后次序必須和形參一致。另外,調(diào)用過(guò)程時(shí)可省略關(guān)鍵字Call。實(shí)參可以是用逗號(hào)分隔的變量、常數(shù)、表達(dá)式等。程序運(yùn)行時(shí),將實(shí)參按次序一一對(duì)應(yīng)形參,即:將實(shí)參的值或地址傳送給對(duì)應(yīng)的形參,而后在過(guò)程中進(jìn)行相應(yīng)的處理。 【例6-9】編寫一計(jì)算階乘的過(guò)程,并在主程序中調(diào)用。Public Sub JC(ByVal x, ByRef p) Dim k As Integer p = 1 For k = 1 To x p = p *k Next KEnd SubPrivate Sub Form1_Click() Handles MyBase.
40、Click Dim c As Long, m As Integer m = 10 Call JC(m, c) MsgBox (“10!=” & c)End SubJC(x,p)是個(gè)通用過(guò)程,形參x傳值,將接受調(diào)用程序傳遞來(lái)的數(shù)據(jù)(要計(jì)算階乘的具體數(shù)值);形參p是傳址,它將接受調(diào)用程序傳來(lái)的實(shí)參變量地址,可以將計(jì)算結(jié)果傳送回調(diào)用程序。事件過(guò)程Form1_Click中調(diào)用過(guò)程JC(m,c)計(jì)算階乘,m=10,對(duì)應(yīng)形參x,即計(jì)算10階乘;變量c對(duì)應(yīng)形參p,它接受過(guò)程JC傳送回的計(jì)算結(jié)果。用MsgBox報(bào)告計(jì)算結(jié)果。 2自定義函數(shù)的定義和調(diào)用 (1)自定義函數(shù)的定義定義格式如下: Private|Pu
41、blic Static Fuction 函數(shù)名( 參數(shù)表) As 類型 局部變量和常量聲明 語(yǔ)句塊 函數(shù)名=返回值 Exit Fuction 語(yǔ)句塊 函數(shù)名=返回值End Function使用說(shuō)明: (1)在建立自定義函數(shù)時(shí),與過(guò)程不同的是在參數(shù)表后有一選擇項(xiàng)“As類型”,它是自定義函數(shù)返回值的數(shù)據(jù)類型,若類型缺省,則為Object類型。 (2)在函數(shù)體內(nèi)必須將函數(shù)的計(jì)算結(jié)果值賦予函數(shù)名,這是函數(shù)返回值所必需的。 (3)函數(shù)參數(shù)表的具體格式與過(guò)程參數(shù)相同。不論有無(wú)參數(shù),函數(shù)名后面的括號(hào)均不能省略。 【例6-10】編寫一計(jì)算階乘的函數(shù)。Function FJC(ByVal x As Intege
42、r) As Integer Dim k As Integer, p As Integer p= 1 If x 0 ThenExit Function End If For k = 1 To x p = p * k Next k FJC = p End Function (2)自定義函數(shù)的調(diào)用若調(diào)用上述例題中的函數(shù)FJC,必須先確定一個(gè)變量用以接受函數(shù)的返回值,如下兩種形式都可以: M1=FJC(5)或 MsgBox(“5!” & FJC(5)6.3窗體與常用控件6.3.1窗體設(shè)計(jì)的基本方法1窗體的創(chuàng)建創(chuàng)建窗體有兩種方法:(1)當(dāng)創(chuàng)建一個(gè)新的項(xiàng)目時(shí),系統(tǒng)自動(dòng)創(chuàng)建項(xiàng)目的第一個(gè)窗體,并將名稱默認(rèn)為F
43、orm1。(2)在應(yīng)用程序的開發(fā)過(guò)程中,可根據(jù)需要添加新的窗體。右單擊當(dāng)前項(xiàng)目,選擇“添加/添加Windows窗體”命令或“添加/添加新項(xiàng)”,在“添加新項(xiàng)”對(duì)話框的“模板”列表框中,選擇“Windows窗體”,單擊【打開】按鈕,一個(gè)新窗體被添加到項(xiàng)目中,默認(rèn)為Form2。 2窗體的屬性 窗體的屬性決定了窗體的外觀和操作,窗體的主要屬性和功能如下:Text:設(shè)置窗口標(biāo)題欄中的標(biāo)題。Size、Location:設(shè)置窗口顯示時(shí)的大小和位置。ForeColor、BackColor:設(shè)置窗體前景色和背景色。MinimizeBox、MaximizeBox:設(shè)置窗體在運(yùn)行時(shí)是否可以最小化和最大化。FormB
44、orderStyle:設(shè)置窗體在運(yùn)行時(shí)是否可以調(diào)整窗體的大小。BackgroundImage:設(shè)置對(duì)象的背景圖片,屬性值是圖片的路徑。Cursor:設(shè)置鼠標(biāo)在該對(duì)象上時(shí)的形狀。Font:設(shè)置對(duì)象中文字的字體、大小、顏色和風(fēng)格等。Icon:設(shè)置窗體的圖標(biāo)。Opacity:設(shè)置窗體的不透明度級(jí)別。WindowState:設(shè)置窗體的窗口狀態(tài)。 注意:用Windows 窗體設(shè)計(jì)器創(chuàng)建的窗體是類(如Form1實(shí)質(zhì)是一個(gè)類名),在運(yùn)行時(shí)顯示的窗體是它的實(shí)例,對(duì)當(dāng)前窗體來(lái)說(shuō),可以用“Me”作為對(duì)象名,而不能用“Form1”。例如,用程序代碼設(shè)置窗體的標(biāo)題。應(yīng)該寫成:Me.Text=”VB.NET應(yīng)用程序”
45、若寫成:Form1.Text=”VB.NET應(yīng)用程序”,則是錯(cuò)誤的。 3窗體的方法窗體可以使用的主要方法如下: Activate:激活窗體并賦予焦點(diǎn)。 Close:關(guān)閉窗體。 Hide:隱藏窗體。 Show:顯示非模式窗體。 ShowDialog:顯示模式對(duì)話框窗體。使用方法的格式為:對(duì)象名.方法名表達(dá)式窗體的事件最常用的窗體事件如下: Load:在第一次顯示窗體前發(fā)生。 Click:在單擊窗體時(shí)發(fā)生。 DoubleClick:雙擊窗體時(shí)發(fā)生。 Closed:關(guān)閉窗體后發(fā)生。 GotFocus:窗體接收焦點(diǎn)時(shí)發(fā)生。 LostFocus:當(dāng)窗體失去焦點(diǎn)時(shí)發(fā)生。 多重窗體一個(gè)VB應(yīng)用程序可以包含多
46、個(gè)窗體,每個(gè)窗體相對(duì)獨(dú)立且具有自己的界面和程序代碼,以實(shí)現(xiàn)不同的功能、完成不同的任務(wù)。(1)設(shè)置啟動(dòng)窗體在具有多個(gè)窗體的應(yīng)用程序中,若不指定啟動(dòng)對(duì)象,則窗體Form1為啟動(dòng)對(duì)象。可以根據(jù)應(yīng)用程序功能上的需要把邏輯上最先運(yùn)行的窗體設(shè)置為啟動(dòng)對(duì)象。重新設(shè)置啟動(dòng)窗體的方法如下:1)選擇“項(xiàng)目屬性”命令。2)單擊“啟動(dòng)對(duì)象”下拉按鈕,選擇某一個(gè)窗體或Main子過(guò)程作為啟動(dòng)對(duì)象。(2)窗體的顯示在多重窗體程序中,除了啟動(dòng)窗體外,其他窗體的顯示可以通過(guò)程序代碼來(lái)完成。例如:要顯示窗體Form2,則可以通過(guò)以下代碼來(lái)實(shí)現(xiàn): Dim FrmDialog As Form2 定義一個(gè)Form2類的對(duì)象變量FrmD
47、ialogFrmDialog = New Form2 FrmDialog初始化,即創(chuàng)建一個(gè)實(shí)例賦予FrmDialogFrmDialog.Show() 顯示FrmDialog或采用以下語(yǔ)句:Dim FrmDialog As New Form2 FrmDialog.Show()6.3.2常用控件 標(biāo)簽Label文本框TextBox命令按鈕Button單選按鈕復(fù)選框框架列表框組合框 1標(biāo)簽(Label) :主要用于描述其它控件。 (1) 主要屬性 AutoSize:設(shè)置標(biāo)簽的大小是否隨顯示內(nèi)容自動(dòng)調(diào)整。 取值類型Boolean,默認(rèn)為False。 BorderStyle:設(shè)置標(biāo)簽的邊框樣式。有3種選
48、擇:Fixed3D(三維邊框)、FixedSingle(單行邊框)、None(無(wú)邊框),默認(rèn)為None。 Enabled:設(shè)置指示標(biāo)簽是否可以對(duì)用戶交互作出響應(yīng),值為True或False。Image、ImageAlign:設(shè)置圖片以及圖片的對(duì)齊方式。Visible:設(shè)置該標(biāo)簽是否在窗體上顯示。True(顯示)、False(不顯示)。默認(rèn)為TrueText、TextAlign:設(shè)置在標(biāo)簽中顯示的文本以及文本的對(duì)齊方式。 2文本框TextBox :允許用戶在應(yīng)用程序中輸入文本。 (1) 主要屬性 Text:接受文本信息。運(yùn)行程序時(shí),用戶在文本框中輸入的內(nèi)容都保存在該屬性中。MaxLength:設(shè)置
49、用戶在文本框中鍵入或粘貼的最大字符數(shù)。Multiline:設(shè)置是否允許顯示或輸入多行文本。PasswordChar:設(shè)置字符,程序運(yùn)行時(shí),輸入文本框中的字符全部顯示該字符。當(dāng)Multiline為True時(shí),該屬性不起作用,如該屬性設(shè)為“*”,則用戶的任何輸入都顯示為“*”。ScrollBars:設(shè)置滾動(dòng)條的模式。Both(水平和垂直滾動(dòng)條)、Horizontal(水平滾動(dòng)條)、Vertical(垂直滾動(dòng)條)、None(沒(méi)有滾動(dòng)條)。SelectedText:設(shè)置或返回當(dāng)前選定的文本內(nèi)容。SelectionLength:設(shè)置或返回文本框中選定的字符數(shù)。SelectionStart:設(shè)置或返回文本
50、框中選定的文本起始點(diǎn),第一個(gè)字符的位置是0。ReadOnly:設(shè)置文本框內(nèi)容為只讀 。(2)事件 TextChanged:Text屬性值更改時(shí)觸發(fā)該事件。 GotFocus:當(dāng)文本框得到焦點(diǎn)時(shí)觸發(fā)該事件。 LostFocus:當(dāng)文本框失去焦點(diǎn)時(shí)觸發(fā)該事件。 KeyPress:當(dāng)文本框具有焦點(diǎn)時(shí),按下任意鍵就會(huì)觸發(fā)該事件。(3)方法 Focus:使文本框獲得焦點(diǎn)。 Copy:將文本框中的當(dāng)前選定內(nèi)容復(fù)制到剪貼板。 Cut:將文本框中的當(dāng)前選定內(nèi)容移動(dòng)到剪貼板中。 Paste:用剪貼板的內(nèi)容替換文本框中的當(dāng)前選定內(nèi)容。 SelectAll:選擇文本框中的所有內(nèi)容。 3按鈕(Button) :主要用
51、于啟動(dòng)應(yīng)用程序。 。(1)屬性 Text、TextAlign:設(shè)置按鈕的標(biāo)題文字及對(duì)齊方式。 BackColor、BackgroundImage:設(shè)置按鈕的背景色及背景圖片。 ForeColor:設(shè)置按鈕控件所包含文字或圖形的前景色。 Image、ImageAlign:設(shè)置前景圖片以及圖片的對(duì)齊方式。 FlatStyle :設(shè)置按鈕的平面樣式外觀。默認(rèn)Standard(三維)。 Font:設(shè)置按鈕包含的文字的字體。(2)事件 命令按鈕最常見(jiàn)的事件:Click例EX4-1例EX4-24單選按鈕(RadioButton) :單選按鈕用于讓用戶在一組相關(guān)的選項(xiàng)中選擇一項(xiàng)。(1)屬性Text、Text
52、Align:設(shè)置控件的標(biāo)題文字及其對(duì)齊方式。Checked:設(shè)置是否選中單選按鈕。選中單選鈕,Checked為True;否則,Checked為False。(2)事件單選按鈕的主要事件有:Click和CheckedChage事件。當(dāng)用戶單擊單選鈕時(shí),觸發(fā)Click事件;當(dāng)Checked屬性值發(fā)生改變時(shí),觸發(fā)CheckedChage事件。5復(fù)選框(CheckBox) :復(fù)選框用于讓用戶在一組可供選擇的項(xiàng)中選定其中的一項(xiàng)或多項(xiàng)。(1)屬性復(fù)選框的主要屬性有Text、Checked和CheckState。其中Text和Checked屬性的意義與單選按鈕相同。CheckState:表示復(fù)選框的狀態(tài)。Ch
53、ecked(被選中)、Unchecked(未被選中,默認(rèn)值)、Indeterminate(顯示選中標(biāo)記并變灰)(2)事件復(fù)選框的主要事件有:Click和CheckedChage事件。它們的觸發(fā)條件與單選按鈕相同。 6框架(GroupBox)框架的典型用途是建立包含多個(gè)單選按鈕的邏輯組,即當(dāng)窗體上需要?jiǎng)?chuàng)建多組相互獨(dú)立的單選按鈕時(shí),可用框架將每組單選按鈕分開,這樣對(duì)一個(gè)框架內(nèi)的單選按鈕的操作就不會(huì)影響到框架外的單選按鈕。當(dāng)需要將一組單選鈕或復(fù)選框放在框架中時(shí),首先應(yīng)設(shè)置框架,然后在框架中建立需要的控件對(duì)象。(1)屬性框架的主要屬性是Text,它被用來(lái)設(shè)置框架的標(biāo)題。(2)事件框架的主要事件有Cli
54、ck和DoubleClick事件。(3)方法Add:將指定的控件添加到框架中。Clear:從框架中刪除所有控件。Remove:從框架中刪除指定的控件。例EX4-5 7列表框(ListBox) :用來(lái)顯示一組選項(xiàng)供用戶選擇,用戶一次可以選擇一項(xiàng)或多項(xiàng)。(1)屬性SelectionMode:設(shè)置在列表框中提供單項(xiàng)選擇或多項(xiàng)選擇Items:設(shè)置列表框中的列表項(xiàng)。SelectedItem:獲取或設(shè)置列表框中的當(dāng)前選定項(xiàng)。SelectedIndex:獲取或設(shè)置列表框中當(dāng)前選定項(xiàng)的索引(從零開始)。MultiColumn:獲取或設(shè)置列表框是否支持多列。(2)事件列表框的主要事件有Click、DoubleC
55、lick和SelectedIndexChanged事件。當(dāng)SelectedIndex 屬性值更改時(shí),SelectedIndexChanged事件將被觸發(fā)。(3)方法列表框常用的方法如下:Items.Add:向列表框中添加選項(xiàng)。Items.Remove:從列表框中刪除選項(xiàng)。Items.RemoveAt:從列表框中刪除指定索引的選項(xiàng)。Items.Insert:向列表框中插入選項(xiàng)。Items.Clear:清除列表框中所有的選項(xiàng)。SetSelected:選擇或清除對(duì)列表框中指定項(xiàng)的選定。 8組合框(ComBox) :是列表框和文本框的組合,用戶可以從列表框中選擇選項(xiàng)或在文本框中輸入新的文本。當(dāng)用戶從列
56、表框中選定某項(xiàng)時(shí),該選項(xiàng)會(huì)顯示在文本框中。組合框和列表框的屬性、事件和方法大致相同,下面介紹組合框獨(dú)有的一些屬性。DropDownStyle:設(shè)置組合框的樣式。DropDown(下拉組合框)、 DropDownList(下拉列表框)、Simple(簡(jiǎn)單組合框)。MaxDropDownItems:設(shè)置要在組合框的下拉部分中顯示的最大項(xiàng)數(shù)。MaxDropDownWidth:設(shè)置組合框下拉部分的寬度。Text:設(shè)置組合框的文本。組合框的常用事件為DropDown事件,單擊組合框的下拉按鈕時(shí)觸發(fā)該事件。例EX4-3例EX4-46.3.3菜單設(shè)計(jì)主菜單:通常位于應(yīng)用程序窗口的頂部,它系統(tǒng)而集中地體現(xiàn)了應(yīng)用程序的功能,用戶可單擊菜單命令來(lái)完成全部(或大部分)程序功能。上下文有關(guān)菜單:也叫快捷菜單(或稱彈出菜單),當(dāng)用戶右單擊窗體或控件時(shí)彈出。MainMenu控件 和Contextmenu控件 ,分別用來(lái)設(shè)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣西西林縣苗族民歌之分析研究
- 公司紙巾采購(gòu)合同范本
- 會(huì)議合同范本1
- 公司買賣車合同范本
- 農(nóng)村個(gè)人購(gòu)房合同范本
- 2025年度智慧城市照明系統(tǒng)建設(shè)項(xiàng)目分包合同模板
- 作品授權(quán)合同范本
- 修車廠招工合同范例
- 圓模三角帶行業(yè)深度研究報(bào)告
- 勞務(wù)合同范本超齡
- 2025年廣東省春季高考英語(yǔ)情景交際題專項(xiàng)練習(xí)(含答案)
- 浙江省湖州是吳興區(qū)2024年中考語(yǔ)文二模試卷附參考答案
- 風(fēng)電設(shè)備安裝施工專項(xiàng)安全措施
- IQC培訓(xùn)課件教學(xué)課件
- 關(guān)于成立合同審核小組的通知
- 2024年上海市中考英語(yǔ)試題和答案
- 征地拆遷項(xiàng)目社會(huì)穩(wěn)定風(fēng)險(xiǎn)評(píng)價(jià)報(bào)告
- 長(zhǎng)沙醫(yī)學(xué)院《無(wú)機(jī)化學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- eras婦科腫瘤圍手術(shù)期管理指南解讀
- 蘇州大學(xué)《實(shí)證金融》2022-2023學(xué)年第一學(xué)期期末試卷
- 商場(chǎng)樓層主管培訓(xùn)
評(píng)論
0/150
提交評(píng)論