




已閱讀5頁(yè),還剩62頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章 創(chuàng)建用戶(hù)界面,2,掌握窗體的常用屬性、事件和方法以及多窗體和 MDI窗體的概念; 掌握常用控件:文本框、標(biāo)簽、命令按鈕、列表框、組合框、圖片框、單選按鈕和復(fù)選框的常用屬性、事件和方法 ; 掌握菜單的制作和使用方法 。,教學(xué)要求,3,2.1 創(chuàng)建窗體 2.2 Visual Basic 的常用控件 2.3 制作菜單,教學(xué)內(nèi)容,4,窗體: 窗體是VB應(yīng)用程序的基本構(gòu)造模塊,用于創(chuàng)建VB應(yīng)用程序用戶(hù)界面或?qū)υ?huà)框,是包容各種控件對(duì)象的容器。 由標(biāo)題欄、邊框以及客戶(hù)區(qū)組成。,2.1 創(chuàng)建窗體,5,2.1.1 窗體的屬性、方法與事件 Name(名稱(chēng)):窗體名稱(chēng),在程序代碼中,被作為對(duì)象的標(biāo)識(shí)名,以識(shí)別不同的窗體對(duì)象,自行命名窗體時(shí),必須以一個(gè)字母開(kāi)頭,可包含數(shù)字和下劃線(xiàn),不能包含空格和標(biāo)點(diǎn)符號(hào),長(zhǎng)度小于40個(gè)字符。 Caption:窗體標(biāo)題,是出現(xiàn)在窗體標(biāo)題欄上的文本,缺省使用窗體名。 BackColor與ForeColor:窗體的背景色與前景色 BorderStyle:窗體邊框風(fēng)格。設(shè)定值及相關(guān)的VB內(nèi)部常量及不同風(fēng)格詳見(jiàn)下表:,1、常用屬性,6,常數(shù) 設(shè)置值 描述 vbBSNone 0 無(wú)(沒(méi)有邊框或與邊框相關(guān)的元素) vbFixedSingle 1 固定單邊框??梢园刂撇藛慰?, 標(biāo)題欄和關(guān)閉按鈕,不能改變尺寸。 vbSizable 2 可調(diào)整的邊框??梢愿淖兇绑w大小。 (缺省值) vbFixedDouble 3 對(duì)話(huà)框風(fēng)格的窗體。大小不能改變。 vbFixedToolWindow 4 工具欄風(fēng)格窗體。大小不能改變。vbSizableToolWindow 5 工具欄風(fēng)格窗體。大小可變。,BorderStyle屬性的六種設(shè)置值,7,Enabled:活動(dòng)屬性。缺省值為”True”,當(dāng)設(shè)置為”False”時(shí),窗口及其上控件將不能被訪(fǎng)問(wèn)。 Left、Top、Height和Width:決定窗體位置與大小。Left和Top是窗體左上角的坐標(biāo)(屏幕左上角為坐標(biāo)零點(diǎn));Height和Width是窗體的高度和寬度,單位均為特維; Font:字體屬性,設(shè)置窗體上正文字體、字型、字號(hào)等; Visible:可見(jiàn)屬性。缺省為“ True”;當(dāng)設(shè)置為“False”時(shí),窗體隱藏,注意:此屬性只在運(yùn)行時(shí)生效。 Picture:背景圖片屬性。 Moveable:可移動(dòng)屬性,缺省為T(mén)rue,窗體在運(yùn)行時(shí)可拖動(dòng),F(xiàn)alse時(shí),不能拖動(dòng);,窗體常用屬性,8,在VB中,有兩種設(shè)置窗體(或其他對(duì)象)屬性值的方法。 在設(shè)計(jì)時(shí),通過(guò)屬性窗口為其設(shè)定各種屬性值; 在程序執(zhí)行過(guò)程中改變屬性值,即通過(guò)程序代碼改變屬性值 在程序代碼中則使用如下格式的代碼行來(lái)改變屬性值: Object . Property = Expression 式中,Object是對(duì)象名; Property是屬于該對(duì)象的某個(gè)屬性名; Expression是為該屬性賦予的值,必須和屬性類(lèi)型一致,即屬性是字符型,表達(dá)式也應(yīng)是字符型;屬性是邏輯型,表達(dá)式也應(yīng)是邏輯型。 例: Labe11.Caption =“歡迎學(xué)習(xí)VB!“ Form1.Enable = False Form1.Caption = Label1.Caption,2.1.2 定制窗體屬性,9,窗體的常用方法 Show: 顯示方法。 如:form2.Show Hide: 隱藏方法; 如:form2. Hide Move: 移動(dòng)方法;如:form1.Move left,top,width,height Print: 打印方法; Cls: 清除方法,清除窗體上所有打印的文本或圖形 Refresh: 刷新方法;通常窗體的刷新是自動(dòng)進(jìn)行的。,方法可使對(duì)象執(zhí)行一個(gè)動(dòng)作或任務(wù)。 使用方法的格式是: 對(duì)象名.方法 或 對(duì)象名.方法Arg1,Arg2,. 后一種方法是帶有參數(shù)的方法。,窗體的常用方法,10,Private Sub Command1_Click() Dim inchw, inchh inchw = Form1.Width inchh = Form1.Height MsgBox “將窗體移動(dòng)到屏幕的左上角, 同時(shí)尺寸縮小為原來(lái)的一半“ Form1.Move 0, 0, inchw / 2, inchh / 2 End Sub,例: 使用Move方法移動(dòng)一個(gè)窗體,重新定位在屏幕左上角,尺 寸縮小一倍。,舉例:,11,事件:能夠被對(duì)象所識(shí)別的動(dòng)作; 當(dāng)某事件發(fā)生了,系統(tǒng)會(huì)自動(dòng)執(zhí)行其事件過(guò)程內(nèi)的代碼 事件過(guò)程的一般格式: Private Sub 對(duì)象名_事件名(參數(shù)表) (程序代碼) End Sub 例如:,窗體的常用事件 Click: 單擊事件; DblClick: 雙擊事件; Load: 裝載事件; Resize: 在窗體被改變大小時(shí),會(huì)觸發(fā)本事件; Activate: 激活事件,當(dāng)窗體變?yōu)楫?dāng)前窗口時(shí),引發(fā)本事件; Deactivate: 失去激活事件,當(dāng)窗體失去激活狀態(tài),即另一個(gè) 窗體成為當(dāng)前窗口時(shí),引發(fā)本事件。,Private Sub Form_Click() vb語(yǔ)句 End Sub,窗體常用事件,12,2.1.3 窗體的顯示、隱藏、裝載和卸載 1、窗體的顯示與隱藏 2、裝載窗體和Load事件 3、卸載窗體與Unload事件 4、 End 語(yǔ) 句,13,(1) 顯示窗體,可在程序中加入以下代碼: Formname.Show Style 其中:Formname是要顯示的窗體名。 Show方法的Style參數(shù)決定窗體是有模式的(vbModel)還是無(wú)模式的(vbModeless)。 有模式窗體不允許用戶(hù)同時(shí)與應(yīng)用程序的其他窗體交互,如Windows程序中的命令執(zhí)行確認(rèn)窗口; 無(wú)模式窗體則允許用戶(hù)與一個(gè)程序的其他窗口自由交互,如VB環(huán)境中的工程、屬性和代碼窗口等,缺省值是無(wú)模式,1、窗體的顯示與隱藏,(2)隱藏窗體,可在程序中加入以下代碼: Formname.Hide 其中:Formname是要隱藏的窗體名。,14,(1)編寫(xiě)事件過(guò)程時(shí),建議不要自行輸入程序框架,而應(yīng)選定對(duì)象和事件過(guò)程,由系統(tǒng)自動(dòng)產(chǎn)生框架。 (2)命令按鈕1的單擊事件名為Command1_Click,命令按鈕2的單擊事件名為Command2_Click,但對(duì)于一個(gè)窗體,單擊事件過(guò)程名為Form_Click,而不是Form1_Click,即窗體的事件過(guò)程中的對(duì)象名是FORM,而非具體的name屬性值。,例:?jiǎn)螕舸绑w1,顯示窗體2。 Private Sub Form_Click() Form2.Show End Sub,注意:,15,2、裝載窗體和Load事件 使用裝載語(yǔ)句可把窗體(或其他對(duì)象)載入內(nèi)存,但并不顯示它。 裝載語(yǔ)句的格式是: Load Object 其中:Object是窗體名(對(duì)象名) 由于VB應(yīng)用程序在執(zhí)行時(shí),會(huì)自動(dòng)裝載啟動(dòng)窗體,所以沒(méi)有必要對(duì)啟動(dòng)窗體使用Load語(yǔ)句。 當(dāng)系統(tǒng)裝載窗體時(shí),將引發(fā)窗體的Load事件; 在使用Show方法顯示窗體時(shí),也會(huì)自動(dòng)將尚未載入內(nèi)存的窗體裝入內(nèi)存,并引發(fā)該窗體的Load事件。,16,3、卸載窗體與Unload事件 使用卸載語(yǔ)句可把窗體(或其他對(duì)象)從內(nèi)存卸載。 卸載語(yǔ)句的格式是: Unload Object 其中:Object是窗體名(對(duì)象名) 卸載將使該對(duì)象的所有屬性重新恢復(fù)為設(shè)計(jì)態(tài)時(shí)設(shè)定的初始值;卸載還將引發(fā)對(duì)象的Unload事件。 如果卸載的對(duì)象是程序唯一的窗體,則將終止程序的運(yùn)行。,一起來(lái)看個(gè)例子吧!,17,4.End 語(yǔ)句 在程序代碼中可使用End語(yǔ)句結(jié)束程序運(yùn)行,形式是: End 執(zhí)行該語(yǔ)句將終止應(yīng)用程序的執(zhí)行,并從內(nèi)存卸載所有窗體。,18,格式:Object.Print 功能:將輸出項(xiàng)顯示在窗體或圖片框上。 說(shuō)明:(1)對(duì)象名缺省,則輸出到窗體上; (2)輸出項(xiàng)之間用逗號(hào)或分號(hào)間隔,若用逗號(hào)間隔,則為標(biāo)準(zhǔn)輸出;若用分號(hào)間隔,則為緊湊輸出。,2.1.4 Print方法,Private Sub command1_Click() Print 1, 2, 3 Print 1; 2; 3 Print Print “ab“, “cd“ Print “ab;“; “cd;“ End Sub,觀(guān)察下列Print語(yǔ)句的執(zhí)行結(jié)果。,19,多窗體程序設(shè)計(jì) 當(dāng)應(yīng)用程序中有多個(gè)窗體界面時(shí),設(shè)計(jì)時(shí),同樣先新建一個(gè)工程,其中有一個(gè)窗體form1,然后通過(guò)下列步驟,設(shè)計(jì)多窗體: 1、添加并設(shè)計(jì)窗體 “工程” “添加窗體”,再依次設(shè)計(jì)每一個(gè)窗體的界面元素以及相應(yīng)的事件過(guò)程; 2、設(shè)置啟動(dòng)窗體 “工程” “工程屬性”,在“通用”選項(xiàng)卡上,設(shè)置“啟動(dòng)對(duì)象”。 注意:(1)在啟動(dòng)窗體中,必須要有對(duì)其他窗體的引用接口,可以是菜單命令或命令按鈕的形式,否則其他窗體將無(wú)法顯示。 (2)多窗體應(yīng)用程序保存時(shí),先將每一個(gè)窗體以一個(gè)獨(dú)立的窗體文件保存,擴(kuò)展名為.frm,再保存工程文件。 (3)多窗體應(yīng)用程序打開(kāi)時(shí),直接打開(kāi)工程文件,將會(huì)把該程序中所有的窗體文件都裝載。,20,MDI(多文檔界面)窗體 在多窗體應(yīng)用程序中,一般有一個(gè)MDI窗體(框架,父窗體)構(gòu)成外部容器窗口,再包括不同的子窗體構(gòu)成內(nèi)層窗體界面。 創(chuàng)建MDI應(yīng)用程序的步驟: 1、“工程” “添加MDI窗體”; 2、將應(yīng)用程序中其它窗體的 MDIchild 屬性設(shè)置為“True”. 3、將 MDI窗體設(shè)置為啟動(dòng)窗體。 注意: 1、一個(gè)應(yīng)用程序中,只有一個(gè)MDI窗體; 2、在MDI窗體上,除PictureBox和Timer外,一般不能直接放置其他控件, 3、關(guān)閉 MDI窗體,將自動(dòng)關(guān)閉所有打開(kāi)的子窗體。 4、運(yùn)行時(shí),子窗體只能在MDI窗體內(nèi)移動(dòng)。,舉例,21,2.2 Visual Basic的常用控件,2.2.1 概述 2.2.2 常用控件,22,控件名 功能 Pointer指針 用于改變控件大小和位置等 PictureBox圖片框 顯示圖形或圖象 Label標(biāo)簽 用于文字說(shuō)明,顯示提示性信息 TextBox文本框 用于字符輸入 Frame框架 用于組合控件,將控件分組 CommandButton命令按鈕 單擊執(zhí)行命令 CheckBox復(fù)選框 用于多項(xiàng)選擇 OptionButton選項(xiàng)按鈕 用于從多個(gè)選項(xiàng)中單選其一 ComboBox組合框 列表框與文本框的組合 ListBox列表框 列出多個(gè)選項(xiàng)供選擇 H.ScrollBar水平滾動(dòng)條 產(chǎn)生水平滾動(dòng)條 V.ScrollBar垂直滾動(dòng)條 產(chǎn)生垂直滾動(dòng)條 Timer計(jì)時(shí)器 用于定時(shí) DriveListBox驅(qū)動(dòng)器列表框 DirListBox文件夾列表框 FileListBox文件列表框 Shape圖形 Line線(xiàn)條 Image圖象 Data數(shù)據(jù)控件 OLE控件,基本控件,23,VB通過(guò)控件箱提供了這些和用戶(hù)進(jìn)行交互的可視化部件,即 控件。,文本框(Text Box) 標(biāo)簽(Label) 命令按鈕(Command Button) 列表框(ListBox) 組合框(ComboBox) 圖象控件(Image)和圖片框(PictureBox) 選項(xiàng)按鈕(Option Button)、復(fù)選框 CheckBox)與框架控件(Frame) 滾動(dòng)條控件( HScrollBar和VScrollBar ) 定時(shí)器控件(Timer),常用控件,24,1.文本框(Text Box) 功能:用于接收用戶(hù)在框內(nèi)輸入的字符信息,或顯示由程序代碼產(chǎn)生的信息。 屬性: Name(名稱(chēng)):文本框的名稱(chēng), Text:文本屬性,該屬性值就是用戶(hù)在文本框輸入的內(nèi)容。(注意:TextBox無(wú)Caption屬性) PasswordChar:口令屬性。本屬性缺省值為空字符串,表示用戶(hù)由鍵盤(pán)輸入的字符,直接在文本框中顯示出來(lái);如果該屬性值為某個(gè)字符,則文本框中輸入的內(nèi)容均顯示為該字符,用戶(hù)看不見(jiàn)實(shí)際輸入的字符,一般可用于口令輸入。(如屬性值設(shè)為*),25,MaxLength:最大長(zhǎng)度屬性。缺省為0,表示本文本框可以接收任意個(gè)字符。 MultiLine:多行屬性。本屬性值若為“真”,則可輸入多行文本;否則只能輸入一行文本。該屬性不能在程序中改變 Scrollbars:在文本框中添加水平和垂直滾動(dòng)條。 0無(wú) 1僅水平滾動(dòng)條 2僅垂直滾動(dòng)條 3均有 Alignment:對(duì)齊屬性,有三種選擇 0(缺省值)文本左對(duì)齊。 1文本右對(duì)齊 2文本居中 Left、 top、 Width、 Height :相對(duì)于用戶(hù)區(qū)的左上角位置。,文本框,前提是MultiLine為T(mén)rue,屬性:,26,方法: SetFocus:設(shè)置焦點(diǎn),通過(guò)本方法可使光標(biāo)指向指定的文本框。 事件: Change:在文本框的Text屬性,即文本的內(nèi)容發(fā)生變 化時(shí),就觸發(fā)本事件; LostFocus:當(dāng)光標(biāo)離開(kāi)文本框時(shí),引發(fā)本事件。 KeyPress:當(dāng)焦點(diǎn)在文本框,并按下任何標(biāo)準(zhǔn)字符集的按鍵時(shí)會(huì)引發(fā)本事件。,例:文本框,文本框,例:在窗體1中的文本框中輸入口令,單擊“判斷”按紐,如口令正確,顯示窗體2,否則,彈出提示錯(cuò)誤窗口,單擊“清空”按紐,清除文本框中的口令,并將焦點(diǎn)設(shè)置在其中以便下次錄入。,28,Private Sub Command1_Click() If Text1.Text = “cpu“ Then form2_2.Show Else MsgBox “sorry! you cant enter the form2!“ End If End Sub,密碼設(shè)置,清空文本框,設(shè)置焦點(diǎn),Private Sub Command2_Click() Text1.Text = “ Text1.SetFocus End Sub,程序代碼,29,Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If Text1.Text = “cpu“ Then Form2_2.Show Else MsgBox “sorry! you cant enter the form2!“, , “文本框“ End If End If End Sub,另外一種觸發(fā)方式:,30,2、標(biāo)簽(Label) 功能:用于在窗體上增加文字說(shuō)明。如用作窗體的狀態(tài)欄,或?yàn)槲谋究?、列表框等添加注釋文字說(shuō)明等。 (1) 屬性 Name:標(biāo)簽名稱(chēng); Caption:標(biāo)題屬性。本屬性值即為標(biāo)簽所顯示的文本內(nèi)容; Alignment:對(duì)齊屬性。缺省值為0,將Caption文本左對(duì)齊;若設(shè)為1,為右對(duì)齊;設(shè)為2,則為居中; AutoSize:大小自適應(yīng)屬性,當(dāng)取值為“True”時(shí),標(biāo)簽大小會(huì)隨實(shí)際顯示的內(nèi)容(Caption)而變化,缺省為“False”。 WordWrap:字折行屬性。取值為“True”時(shí),標(biāo)簽大小垂直擴(kuò)展,即標(biāo)題文字換行,為“False”時(shí),則水平拓展,缺省“False”,該屬性只有在AutoSize屬性為“True”時(shí)才有效。,31,(2) 方法 Refresh:刷新; Move:移動(dòng)。 (3)事件 Click(單擊)、DblClick(雙擊)(很少用及),注意: 標(biāo)簽得不到焦點(diǎn),所以無(wú)SetFocus方法,例 Label,32,Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label1.Left = Command1.Left Label1.Top = Command1.Top + Command1.Height Label1.WordWrap = False Label1.AutoSize = True Label1.BackColor = vbYellow Label1.Visible = True Label1.Caption = “關(guān)閉窗體,結(jié)束應(yīng)用程序“ End Sub,設(shè)置顏色,使標(biāo)簽可見(jiàn),文本不換行,例:窗體FORM1上有一個(gè)命令按紐“Close”,當(dāng)鼠標(biāo)光標(biāo)移動(dòng)動(dòng)到該按鈕上時(shí),在按紐下方顯示由LABEL1提供的提示行:背景色為“淡黃色”,文字為“關(guān)閉窗體,結(jié)束應(yīng)用程序”。,33,Private Sub Command1_Click() Unload Me End Sub,除命令按鈕外,鼠標(biāo)在窗體其他位置移動(dòng)時(shí),并不出現(xiàn)標(biāo)簽提示,Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label1.Visible = False End Sub,34,3、命令按鈕(Command Button) 功能: 用戶(hù)用鼠標(biāo)單擊命令按鈕,就表示要執(zhí)行一條命令,命令的具體功能則是由觸發(fā)的單擊事件過(guò)程中的程序代碼決定。 (1)屬性 Caption:標(biāo)題屬性。就是顯示在按鈕上的提示文字; Default:確定屬性。當(dāng)該屬性為“True”時(shí),按“回車(chē)鍵”等同于單擊此按鈕。在一個(gè)窗體中,也只能有一個(gè)命令按鈕的該屬性值為“True”.缺省值為“False”。 Cancel:取消屬性。當(dāng)本屬性值設(shè)為“True”(真)時(shí),按“Esc”鍵即等同于單擊本按鈕;在一個(gè)窗體中,只能有一個(gè)命令按鈕的該屬性設(shè)置為“True”,缺省值為“False”; Enable:有效屬性,當(dāng)該屬性為“False”時(shí),命令按鈕無(wú)效, 不能響應(yīng)用戶(hù)事件,缺省為“True”。,35,(2)方法 SetFocus:設(shè)置焦點(diǎn)。 設(shè)置為焦點(diǎn)的按鈕,標(biāo)題周?chē)鷮⒂幸粋€(gè)邊框,用戶(hù)直接按“回車(chē)鍵”時(shí),將會(huì)觸發(fā)執(zhí)行該按鈕的單擊事件。 (3)事件 Click,即鼠標(biāo)單擊。這是命令按鈕最基本、最重要的事件。,書(shū)P23 例 2-2,36,例2-2一個(gè)使用命令按鈕的程序示例,Private Sub Command1_Click() Label1.Caption = “報(bào)效祖國(guó)“ Command2.Enabled = True Command2.SetFocus Command1.Enabled = False End Sub,使按鈕2變?yōu)榛顒?dòng)狀態(tài),Private Sub Command2_Click() Label1.Caption = “努力學(xué)習(xí)“ Command1.Enabled = True Command1.SetFocus Command2.Enabled = False End Sub,使按鈕1變?yōu)榉腔顒?dòng)狀態(tài),使按鈕2具有焦點(diǎn),38,4、列表框(ListBox) 用途:列出可供用戶(hù)選擇的項(xiàng)目列表。 屬性: List:表屬性。用于保存列表內(nèi)容。程序代碼中,可通過(guò)表屬性以及列表項(xiàng)序號(hào)實(shí)現(xiàn)對(duì)某具體列表項(xiàng)的訪(fǎng)問(wèn): 對(duì)象名.List(列表項(xiàng)序號(hào)) 其中的對(duì)象名即為列表框的Name屬性值;列表項(xiàng)的序號(hào)從0開(kāi)始,由上到下依次為0、1、2、3. 列表框中的列表項(xiàng)的添加方法:一是設(shè)計(jì)時(shí)在屬性窗口的LIST屬性值中直接添加,二是在程序運(yùn)行時(shí),在代碼中通過(guò)additem方法添加。 ListCount:列表項(xiàng)數(shù)目。,39,ListIndex:列表項(xiàng)索引。其值為當(dāng)前選中的列表項(xiàng)的序號(hào),第一個(gè)列表項(xiàng)的序號(hào)為0,如果未選任何項(xiàng)目,則其值為-1; Text:列表項(xiàng)正文。其值為當(dāng)前選中的列表項(xiàng)的文本,它與List (ListIndex)相同; 即List1.Text=List1.List(ListIndex) Columns:列屬性。設(shè)置列表框中顯示的列表項(xiàng)的列數(shù)。該屬性缺省為,只顯示一列文本。逐行顯示列表項(xiàng),可能有垂直滾動(dòng)條,取值為大于0的值時(shí),列表項(xiàng)可占多列顯示; Sorted:排序?qū)傩浴H≈禐椤癟rue”時(shí),各列表項(xiàng)將按字母表排序,取值為“False”時(shí),將不排序。,屬性,40,方法: AddItem :添加列表項(xiàng)。使用下面的格式來(lái)添加: 對(duì)象名.AddItem ,插入位置序號(hào) 若不指定插入位置,則插入到列表末尾; Clear :刪除列表中所有列表項(xiàng)。 RemoveItem :刪除指定列表項(xiàng)。用法如下: 對(duì)象名.RemoveItem 刪除項(xiàng)序號(hào) 事件: 雖然列表框可以響應(yīng)單擊Click和雙擊DblClick事件。但很少使用。,例:列表框,41,界面如圖所示,在文本框中輸入內(nèi)容,再單擊“增加”命令按紐,可以將文本框中的內(nèi)容添加至列表框中;對(duì)指定的列表框選項(xiàng),單擊“刪除”可將其刪除,同時(shí)及時(shí)更新列表項(xiàng)的總數(shù)。,屬性,舉例,42,Private Sub Command1_Click() List1.AddItem Text1.Text Label3.Caption = List1.ListCount End Sub,Private Sub Command2_Click() List1.RemoveItem List1.ListIndex Label3.Caption = List1.ListCount Text1.Text = “ Text1.SetFocus End Sub,將文本框的內(nèi)容添加至列表框中,將列表框指定的選項(xiàng)進(jìn)行刪除,列表數(shù)目顯示在標(biāo)簽上,43,Private Sub Command3_Click() List1.Clear Label3.Caption = List1.ListCount Text1.Text = “ Text1.SetFocus End Sub,Private Sub Command4_Click() Unload Me End Sub,全部清除,44,5、組合框(ComboBox) 功能: 將文本框和列表框結(jié)合在一起,在列表框中所選項(xiàng)目的文本會(huì)自動(dòng)填入文本框。 屬性: Style:外觀(guān)屬性。組合框的類(lèi)型和功能由本屬性設(shè)定值決定,各設(shè)置值的功能為(見(jiàn)下一頁(yè)): Text:文本屬性。其取值就是用戶(hù)從列表框中選定的文本內(nèi)容或直接輸入文本框中的內(nèi)容。 注意:組合框并不會(huì)自動(dòng)地把用戶(hù)在文本框中輸入地內(nèi)容作為一個(gè)新列表項(xiàng)添加到列表框中,須使用如下語(yǔ)句: ComoBoxname.AddItem ComoBoxname.Text 方法:同列表框。 事件:0和2風(fēng)格的組合框可響應(yīng)Click(單擊)事件;風(fēng)格1的組合框可響應(yīng)DblClick(雙擊)事件;帶有文本框的0和1風(fēng)格的組合框在編輯文本時(shí)可引發(fā)Change事件。,45,ComboBox,組合框Style屬性的三種選擇,常數(shù) 值 描述 vbComboDropDown 0 (缺省值)下拉式組合框。包括一個(gè)下 拉式列表和一個(gè)文本框??梢詮牧斜磉x 擇或在文本框中輸入。 vbComboSimple 1 簡(jiǎn)單組合框。文本框和列表框部分一直顯 示在窗體上??梢詮牧斜碇羞x擇或直接文 本框中輸入。應(yīng)根據(jù)實(shí)際列表項(xiàng)數(shù)目,調(diào) 整控件大小。 vbComboDrop-DownList 2 下拉式列表。這種樣式無(wú)文本框,不允許 用戶(hù)直接輸入,僅允許從下拉式列表中選擇。,46,組合框的外觀(guān),47,界面如下,單擊列表框中的選項(xiàng),將之添加到組合框中,同時(shí)在組合框的文本框中輸入內(nèi)容,按回車(chē)也能添加至列表中。,組合框,列表框,舉例,Private Sub Command1_Click() Combo1.AddItem List1.Text End Sub,Private Sub Combo1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Combo1.AddItem Combo1.Text Combo1.Text = “ End If End Sub,將輸入的內(nèi)容添加至組合框,將列表框指定選項(xiàng)移動(dòng)至組合框,Private Sub Command2_Click() Combo1.RemoveItem Combo1.ListIndex End Sub,Private Sub Command3_Click() Combo1.Clear End Sub,Private Sub Command4_Click() Unload Me End Sub,49,6、圖象控件(Image)和圖片框(PictureBox) 圖像控件(Image) 用途:顯示來(lái)自圖形文件的圖像。 屬性: Strech縮放屬性:為T(mén)rue時(shí),當(dāng)圖像的原始大小與控件大小不同時(shí),會(huì)縮放圖像來(lái)填充整個(gè)控件;為False時(shí),自動(dòng)控件大小來(lái)完整顯示圖片。 BorderStyle邊框?qū)傩裕?時(shí)無(wú)邊框,1時(shí)有邊框。 Picture:圖片屬性,為要顯示的圖片的來(lái)源??稍谠O(shè)計(jì)時(shí)通過(guò)屬性窗口設(shè)置,也可在代碼中通過(guò)VB內(nèi)部函數(shù)設(shè)置: imagename.Picture=LoadPicture(“c:pict1.bmp”) 方法: Move:移動(dòng) 事件:Click dbclick,50,用途:顯示圖形和文本,還可用于創(chuàng)建動(dòng)畫(huà)圖形。 屬性: BorderStyle:邊框?qū)傩浴?Align:對(duì)齊屬性,指圖片框在窗體上的位置。有無(wú)、上、下、左和右五種選擇。 Picture:圖片屬性。設(shè)置同IMAGE控件 AutoSize:為T(mén)rue時(shí),當(dāng)圖片大小與控件大小不同時(shí),會(huì)自動(dòng)改變控件大小來(lái)與圖像一致,為False時(shí),則不會(huì)。 方法: Move:移動(dòng); Print:打印 Cls:清空?qǐng)D片框 事件:Click、 dbclick 注意: PictureBox控件可作為控件容器,在其中放置如命令按紐、文本框等其它控件。,舉例,圖片框控件(PictureBox),51,7.選項(xiàng)按鈕(Option Button)、復(fù)選框(CheckBox)與框架控件(Frame) 單選按鈕(OptionButton) 用途:從一組互斥的選項(xiàng)中選擇一個(gè)。 屬性: Caption:標(biāo)題屬性。 Value:取值屬性。單選按鈕選中時(shí),該屬性值為“True”,否則為“False” 方法: Move、Refresh、Setfocus等 事件: Click 注意: 一般情況下,在一組單選按鈕中可設(shè)置一個(gè)按鈕為“缺省”按鈕,即它的Value屬性初始狀態(tài)為“True”,根據(jù)這個(gè)設(shè)定設(shè)置整個(gè)應(yīng)用程序的初始狀態(tài)。,52,復(fù)選框(CheckBox) 用途:從一組選項(xiàng)中選擇一個(gè)或多個(gè)。 屬性: Caption:標(biāo)題屬性。 Value:取值屬性,表示復(fù)選框的狀態(tài),有三個(gè)選擇 (0未選中、1選中、2當(dāng)前不能訪(fǎng)問(wèn)),注意與單選按紐不同。 Alignment:對(duì)齊屬性。 方法事件:同單選按紐。,53,在窗體上可以容納若干個(gè)選項(xiàng)組??衫每蚣芸丶蚯耙咽黾暗膱D片框控件,作為選項(xiàng)組的“包容器”,把各個(gè)選項(xiàng)組區(qū)分開(kāi)來(lái) 用途:作為控件容器,將控件分組。 屬性: Caption:標(biāo)題屬性。 方法:Move:移動(dòng) 事件:Click:?jiǎn)螕?注意:若窗體上有互不相干的多組單選按鈕,未防止選擇時(shí),他們之間相互干擾,必須將他們分組,分別放置在不同的框架(Frame)中。步驟: 1 先在窗體上拖放一個(gè)框架控件,并選定該框架為當(dāng)前對(duì)象; 2 在框架中直接繪制該組中的各個(gè)按紐控件; 3 若分組成功,則拖動(dòng)框架時(shí),包括其內(nèi)部的控件一起移動(dòng)。,復(fù)選框,框架(Frame),54,界面如圖所示,在窗體上使用框架分別建立一組復(fù) 選按鈕和二組單選按鈕,用戶(hù)在進(jìn)行選擇時(shí),文字的字體字號(hào)和風(fēng)格也能發(fā)生相應(yīng)的變化。,例2-4:,55,Private Sub Check1_Click() If Check1.Value = 1 Then Text1.FontItalic = True ElseIf Check1.Value = 0 Then Text1.FontItalic = False End If End Sub,斜體,粗體,Private Sub Check2_Click() If Check2.Value = 1 Then Text1.FontBold = True ElseIf Check2.Value = 0 Then Text1.FontBold = False End If End Sub,56,程序說(shuō)明: 因?yàn)閺?fù)選框的單擊結(jié)果有兩種,所以在程序中使用了判斷結(jié)構(gòu)。而單選按鈕則不存在這種情況,單擊就是選定。,Private Sub Option1_Click() Text1.FontSize = 12 End Sub Private Sub Option2_Click() Text1.FontSize = 14 End Sub Private Sub Option3_Click() Text1.FontSize = 16 End Sub Private Sub Option4_Click() Text1.FontName = “宋體“ End Sub Private Sub Option5_Click() Text1.FontName = “隸書(shū)“ End Sub Private Sub Option6_Click() Text1.FontName = “黑體“ End Sub,57,8、滾動(dòng)條控件( HScrollBar和VScrollBar ) 用途: 滾動(dòng)條主要用于列有較長(zhǎng)項(xiàng)目或者大量信息的地方。使用戶(hù)在較小的區(qū)域中瀏覽較長(zhǎng)的項(xiàng)目和信息。(用于需要瀏覽信息,但又不支持滾動(dòng)功能的控件。) (1) 屬性 Value:對(duì)應(yīng)于滾動(dòng)框在滾動(dòng)條中的相對(duì)位置。最?。核剑鹤螅淮怪保荷?Max和Min:設(shè)定滾動(dòng)條Value 屬性的取值范圍;(缺?。?32767) LargeChange:在滾動(dòng)條的空白區(qū)域單擊鼠標(biāo),Value的變化量 SmallChange:鼠標(biāo)單擊滾動(dòng)條兩端箭頭時(shí), Value的變化量 (2) 方法 Move (3)事件 Change:滾動(dòng)條不支持單擊事件,當(dāng)Value值發(fā)生變化時(shí),觸發(fā)本事件。,舉例,58,例:通過(guò)紅,綠,藍(lán)三基色合成各種顏色,59,Private Sub changecolor() Text1.BackColor = RGB(HSbred.Value, HSbgreen.Value, HSbblue.Value) End Sub,定義通用過(guò)程,調(diào)用過(guò)程Changecolor,在標(biāo)簽上顯示此時(shí)紅綠藍(lán)三色的初值,均為0,Private Sub Form_Load( ) changecolor Label1.Caption = “紅“ & HSbred.Value Label2.Caption = “綠“ & HSbgreen.Value Label3.Caption = “蘭“ & HSbblue.Value End Sub,60,Private Sub HSbblue_Change() Label3.Caption = “蘭“ & HSbblue.Value changecolor End Sub,改變文本框顏色顯示,Private Sub HSbgreen_Change() Label2.Cap
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 應(yīng)急與安全管理制度
- 影城操作間管理制度
- 微小型工廠(chǎng)管理制度
- 快遞分公司管理制度
- 性教育講師管理制度
- 總工辦員工管理制度
- 情商訓(xùn)練室管理制度
- 戶(hù)外led管理制度
- 換藥室消毒管理制度
- 推拿理療館管理制度
- 2024年度股權(quán)轉(zhuǎn)讓款退款合同3篇
- 生產(chǎn)車(chē)間關(guān)鍵崗位培訓(xùn)
- 精益六西格瑪黃帶認(rèn)定考試題庫(kù)及答案
- 24秋國(guó)開(kāi)《西方行政學(xué)說(shuō)》形考任務(wù)1學(xué)習(xí)活動(dòng)(二)答案(第2套)
- 2019年湖北宜昌中考滿(mǎn)分作文《我向往麥穗一樣的人生》
- 車(chē)輛保險(xiǎn)服務(wù)招投標(biāo)書(shū)范本
- GB 11564-2024機(jī)動(dòng)車(chē)回復(fù)反射裝置
- 《牛津英漢詞典》全集完整版TXT電子書(shū)
- (資料)某縣二次供水改造可行性研究報(bào)告
- 2024年【每周一測(cè)】第四周語(yǔ)文五年級(jí)下冊(cè)基礎(chǔ)練習(xí)題(含答案)
- 電氣自動(dòng)化工程師自學(xué)寶典閱讀筆記
評(píng)論
0/150
提交評(píng)論