第3章基本控件_第1頁(yè)
第3章基本控件_第2頁(yè)
第3章基本控件_第3頁(yè)
第3章基本控件_第4頁(yè)
第3章基本控件_第5頁(yè)
已閱讀5頁(yè),還剩120頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第3章 基本控件3.1 基本概念 在窗體上用于輸入、輸出信息的圖形或文字符號(hào)稱為控件。控件是構(gòu)成用戶界面的基本元素,為了方便用戶開發(fā)應(yīng)用程序,VB提供了三類控件:標(biāo)準(zhǔn)控件(或稱內(nèi)部控件)是Windows本身的資源,如工具箱中的標(biāo)準(zhǔn)控件(共20個(gè)),不能添加和刪除;ActiveX控件(外部控件)ActiveX控件是一個(gè)提供特定功能的二進(jìn)制對(duì)象。程序開發(fā)人員可以把ActiveX控件添加到自己編寫的程序中。ActiveX控件是擴(kuò)展名為.Ocx的控件;可插入控件可插入對(duì)象也是一種ActiveX控件,只是插入的對(duì)象本身就是一個(gè)應(yīng)用程序。由于可插入對(duì)象也能夠添加到工具箱內(nèi),因此可插入對(duì)象使用與使用工具箱中

2、普通控件一樣。表3-1 窗體與標(biāo)準(zhǔn)控件基本屬性Name (名稱)Name(名稱)屬性指所創(chuàng)建對(duì)象的名稱(建議窗體用漢字命名,控件一般使用系統(tǒng)默認(rèn)名)。Caption Caption屬性用于設(shè)置控件上顯示的文字內(nèi)容。Height、Width、Top、Left 這四個(gè)屬性用于設(shè)置控件的高度、控件的寬度、控件離屏幕頂部的距離、控件離屏幕左邊的距離。Enabled Enabled屬性用于設(shè)置對(duì)象的可操作性(其值為:True、False)。Visible Visible屬性用于設(shè)置對(duì)象的可見性(其值為:True、False)。Font Font屬性用于設(shè)置對(duì)象的字體。ForeColor ForeColo

3、r屬性用于設(shè)置對(duì)象的前景顏色(字體顏色)。BackColor BackColor屬性用于設(shè)置對(duì)象的背景顏色。BorderStyleBorder Style屬性用于設(shè)置對(duì)象的邊框樣式(0:無(wú),1:?jiǎn)芜叄?。AlignmentAlignment屬性用于設(shè)置對(duì)象的對(duì)齊方式(0:左對(duì)齊,1:右對(duì)齊,2:居中)AutoSize 當(dāng)對(duì)象的AutoSize屬性為True時(shí):自動(dòng)調(diào)整大??;當(dāng)AutoSize屬性為False時(shí):不可調(diào),若正文太長(zhǎng)則自動(dòng)裁掉。WordWarp 當(dāng)對(duì)象的Word Warp屬性為True時(shí):垂直方向顯示文本。TabIndexTabIndex屬性用于決定按下Tab鍵時(shí),焦點(diǎn)在各個(gè)控件中移

4、動(dòng)的順序。ToolTipText 設(shè)置鼠標(biāo)暫停在控件上顯示的提示??梢酝ㄟ^屬性窗口,也可以通過程序設(shè)置,例如:Label1.ToolTipText = 提示! 3.2 命令按鈕(CommandButton)命令按鈕是VB應(yīng)用程序中最常用的控件,它的默認(rèn)名稱(Name)和標(biāo)題(Caption)都為CommandX(X為編號(hào),從1,2,依次順延)。在應(yīng)用程序中,命令按鈕主要用于運(yùn)行某一個(gè)事件過程。在運(yùn)行時(shí)可以用鼠標(biāo)、鍵盤按下述方法選擇操作命令按鈕:用鼠標(biāo)單擊按鈕;按 TAB 鍵,將焦點(diǎn)轉(zhuǎn)移到按鈕上,然后按 SPACEBAR 或 ENTER 鍵選定按鈕;按命令按鈕的快捷鍵(ALT+ 帶有下劃線的字母

5、);若命令按鈕是窗體的缺省命令按鈕,直接按 ENTER 鍵選定按鈕;若命令按鈕是窗體的缺省取消按鈕,則可按 ESC 鍵選定按鈕;單擊它時(shí)將調(diào)用已寫入其Click 事件過程中的命令。3.2.1常用屬性 1、Caption屬性2、Default屬性 用于使用文字來(lái)標(biāo)識(shí)命令按鈕的功能,最多255個(gè)字符。用于設(shè)置第一個(gè)可執(zhí)行的命令按鈕,其缺省屬性值為False。 對(duì)象.Default= True 或者對(duì)象.Default= False該屬性用于設(shè)置默認(rèn)的第一個(gè)可執(zhí)行的取消命令按鈕,其缺省屬性值為False。當(dāng)窗體中有多個(gè)命令按鈕時(shí),只能將其中一個(gè)命令按鈕的Cancel屬性值設(shè)置為True,程序運(yùn)行后,

6、不管焦點(diǎn)在哪個(gè)控件上,按Esc鍵,就等于單擊了該按鈕。該屬性設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.Cancel= True 或者對(duì)象.Cancel= False3、Cancel屬性4、Value屬性該屬性在設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置。Value值若為True表示該按鈕被按下,并觸發(fā)該命令按鈕的Click事件。Value屬性缺省值為False,表示未選擇按鈕。該屬性也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,來(lái)觸發(fā)命令按鈕的 Click 事件,語(yǔ)句格式為:對(duì)象.Value=True 或者對(duì)象.Value=False例如:Private Sub Command1

7、_Click() Command2.Value = True 在代碼中觸發(fā)Command2的 Click 事件End SubPrivate Sub Command2_Click() Print 單擊Command1觸發(fā)Command2的Click事件End Sub5、Style屬性該屬性用來(lái)設(shè)置命令按鈕外觀。只能在設(shè)計(jì)時(shí)通過屬性窗口設(shè)置,Style屬性共有二個(gè)屬性值0、1,缺省值為0。屬性值的含義見下表: 表3-2 按鈕的style屬性0:(Standard)標(biāo)準(zhǔn)命令按鈕上不能顯示圖形和背景顏色。1:(Graphical)圖形命令按鈕上可顯示圖形,還可以改變按鈕顏色。當(dāng)Style屬性設(shè)置為圖形

8、后,可以用 Picture、DownPicture 和 DisabledPicture 屬性或LoadPicture()函數(shù)加載圖片增強(qiáng)視覺效果。比如要向命令按鈕添加圖標(biāo)或位圖,或者在單擊、禁止控件時(shí)顯示不同的圖象。例如:Private Sub Form_Load() Command1.DownPicture = LoadPicture(c:PLANE2.ICO)End SubPrivate Sub Command1_Click() Command1.DownPicture = LoadPicture(c:PLANE2.ICO)End Sub6、DownPicture屬性該屬性在設(shè)計(jì)時(shí)可以通過

9、屬性窗口設(shè)置返回或設(shè)置一個(gè)對(duì)圖片的引用。該圖片在控件被單擊并處于壓下狀態(tài)時(shí)顯示在控件中。該屬性也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.DownPicture = 圖片 7、DisabledPicture 屬性該屬性在設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,用于返回或設(shè)置一個(gè)對(duì)圖片的引用。當(dāng)控件 Enabled 屬性被設(shè)置為 False 時(shí),該圖片在控件無(wú)效時(shí)顯示在控件中。該屬性也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.DisabledPicture = 圖片 8、ToolTipText屬性該屬性在設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,用于返回或設(shè)置一個(gè)工具提示。當(dāng)用戶定義了圖形按鈕后,設(shè)計(jì)

10、時(shí)可以設(shè)置ToolTipText屬性中的文字提示,以解釋按鈕的功能。使用前提是該命令按鈕可用,即Enabled屬性為True。該屬性也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.ToolTipText = 字符串3.2.2 常用事件鼠標(biāo)事件:MouseDown:按下鼠標(biāo)按鈕時(shí)觸發(fā);MouseUp:釋放鼠標(biāo)時(shí)觸發(fā);MouseMove:鼠標(biāo)指針在對(duì)象上移動(dòng)時(shí)觸發(fā)鍵盤事件:KeyDown:鍵盤按下時(shí)觸發(fā);KeyPress:?jiǎn)螕翩I盤時(shí)觸發(fā);KeyUp:松開鍵盤時(shí)觸發(fā)焦點(diǎn)事件:GotFocus:對(duì)象獲得焦點(diǎn)時(shí)觸發(fā);LostFocus:對(duì)象失去焦點(diǎn)時(shí)觸發(fā),主要用來(lái)對(duì)更新進(jìn)行驗(yàn)證和確認(rèn)3.2.3 應(yīng)

11、用舉例Command1.Visible =False命令按鈕不可見Command1.Enabled=True 命令按鈕無(wú)效 Command1.Default =True 使命令按鈕成為缺省的活動(dòng)按鈕,可用Enter鍵選中Command1.Cancel =True 使命令按鈕成為缺省的取消按鈕,可用Esc鍵選中例如:設(shè)計(jì)一個(gè)輸入密碼的界面,如圖3-1所示。程序運(yùn)行后,在文本框內(nèi)輸入密碼,然后單擊命令按鈕確定或按回車鍵確定密碼輸入,若密碼正確文本框內(nèi)顯示密碼輸入正確!字樣;反之,密碼錯(cuò)誤在窗體標(biāo)題上顯示密碼有誤,重新輸入字樣。圖3-1 輸入密碼對(duì)象屬性設(shè)置見下表:表3-3 輸入密碼的界面對(duì)象對(duì)象屬

12、性設(shè)置窗體NameForm1Caption請(qǐng)輸入密碼ControlBoxFalse文本框NameText1PasswordChar*命令按鈕1NameCommand1Caption確定命令按鈕2NameCommand2Caption結(jié)束程序代碼如下:Private Sub Form_Load() Show 必須有此語(yǔ)句 Text1.Text = Text1.SetFocusEnd SubPrivate Sub Command1_Click()Dim password As Stringpassword = Text1.Text If password = 1234 Then Text1.Pas

13、swordChar = 清除PasswordChar屬性設(shè)置Text1.Text = 密碼輸入正確! Else Form1.Caption = 密碼有誤,重新輸入 Text1.Text = Text1.SetFocus End IfEnd SubPrivate Sub Command2_Click() EndEnd SubPrivate Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then 判斷是否按了回車鍵 Command1_Click 執(zhí)行Command1的單擊事件 End IfEnd Sub3.3文本框與標(biāo)簽框標(biāo)簽(L

14、abel)控件是VB中輸出文本信息的常用工具,目前幾乎取代了Print方法。主要用來(lái)在固定位置顯示文本,且僅用于顯示文本。它所顯示的內(nèi)容只能用Caption屬性來(lái)設(shè)置或修改,不能直接編輯。標(biāo)簽常用來(lái)標(biāo)注自身沒有Caption屬性的控件,如用標(biāo)簽為文本框、列表框和組合框等控件附加描述性信息。標(biāo)簽的默認(rèn)名稱(Name)和標(biāo)題(Caption)都為L(zhǎng)abelX(X為編號(hào),從1,2,依次順延)。 3.3.1標(biāo)簽(標(biāo)簽(Label)控件)控件1. 常用屬性標(biāo)簽的部分屬性,如名稱、Caption、BorderStyle、Enabled、ForeColor 、Font、 Height、Visible 、Wi

15、dth、Top與 Left等屬性,與窗體及其他控件屬性相同。另外,還可以使用如下屬性:l Alignment 屬性l AutoSize 屬性 l BackStyle 屬性 l WordWrap屬性 該屬性用來(lái)確定標(biāo)簽中文本對(duì)齊方式。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,共有三個(gè)屬性值。屬性值的描述見下表:表3-4 標(biāo)簽控件Alignment屬性設(shè)置值(1)Alignment 屬性常數(shù)設(shè)置值描述VbLeftJustify0(缺省值)文本左對(duì)齊。VbRightJustify1文本右對(duì)齊VbCenter2文本居中該屬性的設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.Alignment = 常數(shù)/設(shè)

16、置值(2)AutoSize 屬性該屬性用來(lái)設(shè)置標(biāo)簽是否能夠根據(jù)標(biāo)題的內(nèi)容自動(dòng)調(diào)整大小。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,共有兩個(gè)屬性值,缺省值為False。當(dāng)設(shè)置值為True時(shí),標(biāo)簽可根據(jù)其中標(biāo)題的內(nèi)容自動(dòng)調(diào)整大小,即把所有的文本都顯示出來(lái);設(shè)置值為False時(shí),不論標(biāo)題內(nèi)容有多少,標(biāo)簽保持設(shè)計(jì)時(shí)定義的大小,超出的部分不顯示。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.AutoSize = False/True(3)BackStyle 屬性該屬性用來(lái)設(shè)置Label 控件或 Shape 控件的背景是透明的還是非透明的。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,共有兩個(gè)屬性值0、1,缺省值為1。當(dāng)

17、設(shè)置值為1時(shí),Label 控件的背景是非透明,用控件的 BackColor 屬性設(shè)置值填充該控件,并隱藏該控件后面的所有顏色和圖片。若設(shè)置值為0時(shí),Label 控件的背景是透明的,控件后的背景色和任何圖片都是可見的。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.BackStyle = 1/0(4)WordWrap屬性該屬性用來(lái)設(shè)置標(biāo)簽是否可以在垂直方向上變化大小以適應(yīng)標(biāo)題內(nèi)容的大小。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,共有兩個(gè)屬性值False和True,缺省值為False。當(dāng)設(shè)置值為True時(shí),則標(biāo)簽可以在垂直方向上變化,但AutoSize的值必須也為True,否則標(biāo)簽不能在垂直方向

18、上變化。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象. WordWrap =False/True注意:若要標(biāo)簽在水平方向上變化大小以適應(yīng)標(biāo)題內(nèi)容的大小,AutoSize的值為True,WordWrap 的值為False。2. 常用事件(1)Change事件:當(dāng)標(biāo)簽的內(nèi)容更改時(shí)觸發(fā)Change事件。(2)Click 事件:?jiǎn)螕羰录?,點(diǎn)擊標(biāo)簽觸發(fā)該事件。(3)DblClick事件:雙擊事件,雙擊標(biāo)簽時(shí)觸發(fā)該事件。3. 其它用法標(biāo)簽除了直接在設(shè)計(jì)時(shí)設(shè)置之外,也常在運(yùn)行時(shí)使用程序代碼來(lái)顯示時(shí)間。Time$是一個(gè)與時(shí)間有關(guān)的函數(shù),由于它的返回值是字符串,因此可以把它賦值給標(biāo)簽的標(biāo)題,這

19、樣就可以用標(biāo)簽來(lái)顯示時(shí)間。例如:Label1.caption=Time$當(dāng)要在標(biāo)簽中同時(shí)顯示2行以上的字符串,可以通過程序代碼實(shí)現(xiàn),在字符串之間加上chr$(13)+ chr$(10)控制碼(分別表示回車和換行字符)。例如:Label1.Caption = Time$ & Chr$(13) + Chr$(10) & Date$3.3.2 3.3.2 文本框(文本框(TextBoxTextBox) 控件控件1. 常用屬性文本框(TextBox)是一個(gè)文本編輯區(qū),用戶可在文本區(qū)輸入、編輯、修改文本,也可以顯示文本。文本框的默認(rèn)名稱(Name)和Text屬性缺省值為TextX(X為編

20、號(hào),從1,2,依次順延)。文本框的部分屬性,如名稱、BorderStyle、Enabled、Forecolor 、Font、 Height、Visible 、Width、Top與 Left等屬性與窗體及其他控件的屬性相同。另外,還可以使用如下屬性:(1)Locked 屬性該屬性用于設(shè)置文本框是否可編輯。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,共有兩個(gè)屬性值,缺省值為False,表示可以編輯文本框中的文本;當(dāng)屬性設(shè)置值為True,表示不能編輯文本框中的文本,但可以在運(yùn)行時(shí)通過程序代碼改變文本框中的內(nèi)容。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象. Locked =False/True(2

21、)Maxlength 屬性該屬性用于設(shè)置文本中輸入字符的最大長(zhǎng)度。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,缺省值為“0”。指出對(duì)于用戶系統(tǒng)上單行 TextBox 控件來(lái)說,最大值不能超過被內(nèi)存強(qiáng)制建立的值,并且對(duì)于多行 TextBox 控件而言,最大值大約為 32K。任何大于0的數(shù)表示字符數(shù)的最大值。該屬性的設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象. Maxlength =數(shù)值注意:VB中所有的字符長(zhǎng)度均為“雙字節(jié)”。(3)Multiline 屬性該屬性用于設(shè)置TextBox中的文本能否換行。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,共有兩個(gè)屬性值,缺省值為False。若其屬性值為False,則Text

22、Box中的文本不能換行;若其屬性值為True, ScrollBars設(shè)置為 None (0),則無(wú)滾動(dòng)條。注意:Multiline和Scrollbars屬性只能在設(shè)計(jì)時(shí)設(shè)置,不能在運(yùn)行時(shí)通過程序代碼設(shè)置。(4)Text 屬性該屬性用于顯示文本框中的信息。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,缺省值為Text1。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.Text =字符串注意:若在文本框中進(jìn)行多行輸入,要把MultiLine 屬性設(shè)置為 True。換行輸入,按Ctrl+回車鍵;結(jié)束輸入,則按回車鍵。見圖3-2所示。圖3-2 文本框的多行輸入另外,MultiLine 屬性設(shè)置為Fals

23、e,Textbox 控件的Text設(shè)置值最多可以有2048個(gè)字符,反之為32K。(5)Scrollbars屬性該屬性用于設(shè)置TextBox是否具有滾動(dòng)條,并設(shè)置滾動(dòng)條的樣式。只能在設(shè)計(jì)時(shí)通過屬性窗口設(shè)置,共有四個(gè)屬性值,屬性值的描述見下表:表3-5 文本框控件Scrollbars屬性設(shè)置值常數(shù)設(shè)置值描述VbSBNone0(缺省值)無(wú)滾動(dòng)條VbHorizontal1水平滾動(dòng)條VbVertical2垂直滾動(dòng)條VbBoth3水平、垂直兩種滾動(dòng)條(6)PasswordChar 屬性該屬性用于設(shè)置用何種顯示字符掩飾用戶輸入的字符(常用于密碼口令的輸入)。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,將 PasswordC

24、har 設(shè)置為長(zhǎng)度為 0 的字符串 ( ) (缺省值),將顯示實(shí)際的文本。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.PasswordChar =字符串例如:每次單擊窗體,文本將在星號(hào) (*) 密碼和普通文本之間轉(zhuǎn)換。Private Sub Form_Click() If Text1.PasswordChar = Then Text1.PasswordChar = * Else Text1.PasswordChar = End IfEnd Sub注意:能夠?qū)⑷我庾址x予此屬性,但只有第一個(gè)字符是有效的,其余的字符將被忽略;另外,如果 MultiLine 屬性被設(shè)為True

25、,那么設(shè)置PasswordChar屬性將不起作用。 (7)TabStop 屬性該屬性用于設(shè)置文本框是否能夠獲得焦點(diǎn)。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,缺省值為True。若該屬性值為True,表示使用Tab鍵能將焦點(diǎn)移動(dòng)到該對(duì)象;若該屬性值為False,表示當(dāng)用戶按下 Tab 鍵時(shí),將跨越該對(duì)象,雖然該對(duì)象仍然在實(shí)際的 Tab 鍵順序中保持其位置,按照 TabIndex 屬性的決定。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.TabStop =True/False (8)TabIndex 屬性該屬性用于返回或設(shè)置父窗體中大部分對(duì)象的 Tab 鍵次序。設(shè)計(jì)時(shí)可以通過屬性窗口設(shè)置,缺省

26、情況下,在窗體上畫控件時(shí) VB 會(huì)分配一個(gè) Tab 鍵順序,TabIndex 屬性值 “Index”是從0 到 (n-1) 的整數(shù)。該屬性設(shè)置也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:對(duì)象.TabIndex = index (9)SelStart 屬性SelStart是運(yùn)行時(shí)屬性,用于返回或設(shè)置焦點(diǎn)(光標(biāo))在文本框中文本的位置(文本的起始位置為0)。該屬性在設(shè)計(jì)時(shí)不可用。語(yǔ)句格式為:對(duì)象.SelStart =數(shù)值表達(dá)式(10)SelLength屬性SelLength是運(yùn)行時(shí)屬性,用于返回或設(shè)置文本框中選擇的字符數(shù)。該屬性在設(shè)計(jì)時(shí)不可用。語(yǔ)句格式為:對(duì)象.SelLength =數(shù)值表達(dá)式(

27、11)SelText屬性SelText是運(yùn)行時(shí)屬性,用于返回或設(shè)置文本框中所選擇文本的字符串。如果沒有字符被選中,則為零長(zhǎng)度字符串 ()。該屬性在設(shè)計(jì)時(shí)不可用。語(yǔ)句格式為:對(duì)象.SelText =字符串表達(dá)式SelStart、SelLength、SelText這幾個(gè)運(yùn)行時(shí)設(shè)置的屬性,常用在文本編輯中設(shè)置插入點(diǎn)及范圍、選定字符串、清除文本等。 2. 常用事件 文本框支持Click、 DblClick等鼠標(biāo)事件,同時(shí)也支持如下事件: Change事件:當(dāng)用戶向文本框中輸入新的文本,或在程序運(yùn)行中對(duì)文本框的Text屬性進(jìn)行更改時(shí),都將觸發(fā)其Change事件。 GotFocus事件:對(duì)象獲得焦點(diǎn)事件。

28、當(dāng)運(yùn)行程序時(shí)用Tab鍵或用鼠標(biāo)選擇對(duì)象,或用SetFocus方法使焦點(diǎn)(光標(biāo))定位在對(duì)象上時(shí),都會(huì)觸發(fā)該事件。例如:當(dāng)文本框獲得焦點(diǎn)后,自動(dòng)選擇文本框內(nèi)全部?jī)?nèi)容。Private Sub Form_Load()ShowText1.SetFocusEnd SubPrivate Sub Text1_GotFocus()Text1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubLostFocus事件:對(duì)象失去焦點(diǎn)事件。當(dāng)按下Tab鍵或用鼠標(biāo)單擊窗體上其他對(duì)象而使該文本框失去焦點(diǎn)時(shí)觸發(fā)該事件。例如:當(dāng)文本框失去焦點(diǎn)后,把文本框中內(nèi)容賦給標(biāo)簽。Pr

29、ivate Sub Text1_LostFocus()Label1.Caption = Text1.TextEnd Sub例如:一個(gè)文本框(Text1),初始狀態(tài)下內(nèi)容為空;當(dāng)獲得焦點(diǎn)時(shí),文本框內(nèi)容顯示文本框獲得焦點(diǎn)字樣;當(dāng)單擊命令按鈕(Command1),文本框失去焦點(diǎn),則顯示文本框失去焦點(diǎn)字樣,文本框回到初始狀態(tài);具體程序如下:Private Sub Command1_Click()Text1.Text = Text1_LostFocusEnd SubPrivate Sub Text1_GotFocus()Text1.Text = 文本框獲得焦點(diǎn)End SubPrivate Sub Tex

30、t1_LostFocus()Text1.Text = 文本框失去焦點(diǎn)End Sub KeyPress事件:當(dāng)焦點(diǎn)在當(dāng)前文本框中,當(dāng)用戶按下并釋放鍵盤上某鍵時(shí)引發(fā)的KeyPress事件,在該事件發(fā)生的同時(shí),返回用戶輸入字符的ASCII碼值(十進(jìn)制)。例如:將輸入文本框內(nèi)的字符及相對(duì)應(yīng)的ASCII碼打印到窗體上。程序如下:Private Sub Text1_KeyPress(KeyAscii As Integer)Dim zf As Stringzf = Chr(KeyAscii) KeyAscii為按鍵的 Ascii值(ALT 鍵除外)Print zf, KeyAscii End Sub其中8對(duì)

31、應(yīng)BackSpace、45對(duì)應(yīng) - 、46對(duì)應(yīng) . 、48-57對(duì)應(yīng) 0-9。例如:限制輸入到文本框中的數(shù)據(jù),如數(shù)據(jù)只能為“數(shù)字”,并給出用戶一個(gè)提示,說明是正確的;反之,若輸入的數(shù)據(jù)不是“數(shù)字”,則給出錯(cuò)誤信息。利用文本框的KeyPress事件。每輸入一個(gè)字符(即發(fā)生KeyPress事件)利用KeyAscii進(jìn)行檢測(cè),如果不是數(shù)值型,立即給出提示,并要求用戶重新輸入。程序如下:Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii 57 Or KeyAscii 48 And KeyAscii 8 Then MsgBox 你輸入的一

32、個(gè)數(shù)據(jù)不是數(shù)字,請(qǐng)重新輸入 KeyAscii = 0 KeyAscii為一空值 Text1.Text = Chr(KeyAscii) 轉(zhuǎn)換成字符串是一空串SendKeys Home+End SendKeys BACKSPACE Text1.SetFocusElse Text1.Text = Text1.Text + Chr(KeyAscii)End IfEnd Sub上面程序在解決文本框中接收數(shù)據(jù)時(shí)有這樣一個(gè)問題,即當(dāng)文本框接收不是數(shù)字時(shí),前面已經(jīng)接收的數(shù)字也一同被清空,下面提供的程序可以解決這個(gè)問題。Private Sub Text1_KeyPress(KeyAscii As Integer

33、)If KeyAscii 57 Or KeyAscii 48 And KeyAscii 8 Then Text1.Text = Text1.Text + Chr(KeyAscii) MsgBox 你輸入的數(shù)據(jù) & Chr(KeyAscii) & 不是數(shù)字,請(qǐng)重新輸入 SendKeys BACKSPACE SendKeys End Text1.Text = Left$(Text1.Text, Len(Text1.Text) - 1) End IfEnd Sub例如:限制輸入到文本框中的數(shù)據(jù),如數(shù)據(jù)只能為“數(shù)字”、英文字母、退格鍵和,下劃線;若輸入的數(shù)據(jù)不是規(guī)定數(shù)據(jù)后立即退出過程,

34、并給出提示信息。程序如下:Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 65 And KeyAscii = Asc(a) And KeyAscii = Asc(0) And KeyAscii = Asc(9) Then Exit Sub End If If KeyAscii = Asc(_) Then Exit Sub End If If KeyAscii = 8 Then 退格鍵 Exit Sub End If Beep MsgBox 你輸入的數(shù)據(jù)不是規(guī)定數(shù)據(jù),請(qǐng)重新輸入 KeyAscii = 0 作用阻止“不允許

35、接收的字符”在文本框內(nèi)回顯End Sub3. 常用方法SetFocus方法:用于將焦點(diǎn) (光標(biāo))移到指定的文本框中(該方法主要用于程序中)。語(yǔ)句格式為:對(duì)象.SetFocus例如:執(zhí)行下面程序代碼,將焦點(diǎn) (光標(biāo))移到Text1上。Text1.SetFocus 例如:通過下面的例子來(lái)說明標(biāo)簽與文本框的用法。要求設(shè)計(jì)一窗體如圖3-4所示,用于顯示輸入的姓名、性別、年齡。點(diǎn)擊輸入按鈕進(jìn)行文本框內(nèi)容的清空,點(diǎn)擊顯示按鈕則在最下面的標(biāo)簽4中顯示輸入的內(nèi)容,點(diǎn)擊退出按鈕退出程序。對(duì)象屬性設(shè)置見下表:表3-6 實(shí)例界面控件對(duì) 象名稱(Name)標(biāo)題(Caption)文本(Text)窗體Form1VB測(cè)試系

36、統(tǒng)文本框1Text1無(wú)空白文本框2Text2無(wú)空白文本框3Text2無(wú)空白標(biāo)簽1Label1姓名無(wú)標(biāo)簽2Label2性別無(wú)標(biāo)簽3Label3年齡無(wú)標(biāo)簽4Label4無(wú)空白命令按鈕1Command1輸入無(wú)命令按鈕2Command2顯示無(wú)命令按鈕3Command3結(jié)束無(wú)圖3-4 界面設(shè)計(jì)Private Sub Form_Load() Label4.Caption = End SubPrivate Sub Command1_Click() 輸入 Text1.Text = Text2.Text = Text3.Text = Text1.SetFocus Label4.Caption = End Sub

37、Private Sub Command2_Click() 顯示輸入內(nèi)容 Label4.Caption =Label1.Caption & Text1.Text & Label2.Caption &Text2.Text & _Label3.Caption & Text3.TextEnd SubPrivate Sub Command3_Click() 結(jié)束 EndEnd Sub3.4 3.4 列表框列表框列表框?yàn)橛脩籼峁┝诉x項(xiàng)的列表,用戶可以根據(jù)需要,從列表框顯示的項(xiàng)目列表中選擇一個(gè)或多個(gè)項(xiàng)目。如果項(xiàng)目太多,超出列表框設(shè)計(jì)時(shí)的長(zhǎng)度,則VB會(huì)自動(dòng)給列表框加上垂

38、直滾動(dòng)條。為了能夠正確操作,列表框的高度應(yīng)不少于三行。它的默認(rèn)名稱(Name)ListX(X為編號(hào),從1,2,依次順延)。3.4.1 3.4.1 常用屬性常用屬性 列表框的部分屬性,如名稱、BackColor、Enabled、ForeColor 、Font、 Height、Visible 、Width、Top與 Left等屬性與窗體及其他控件的屬性相同。另外,還可以使用如下屬性:List(Index) 屬性用來(lái)列出表項(xiàng)的內(nèi)容。list是一個(gè)數(shù)組,Index是數(shù)組下標(biāo)(下標(biāo)值從0開始),通過Index指明數(shù)組中的第幾個(gè)元素(用于訪問列表的全部項(xiàng)目),語(yǔ)句格式為:SM=列表框.List(Index

39、)例如:列出列表框List1第6項(xiàng)內(nèi)容。SM= List1.List(5) (或?qū)懗蒘M = List1.List(List1.ListIndex))Print SM 利用該屬性還可以改變列表框內(nèi)表項(xiàng)的內(nèi)容,語(yǔ)句格式為: 列表框.List(Index) = SM ListIndex屬性返回當(dāng)前已選定項(xiàng)目位置,項(xiàng)目位置由下標(biāo)(index)確定(未選定項(xiàng)目時(shí),返回ListIndex的下標(biāo)(index)值為-1)。該屬性只能在運(yùn)行中通過程序代碼進(jìn)行設(shè)置。當(dāng)在程序中設(shè)置ListIndex后,被選中的項(xiàng)目反相顯示。例如:選擇列表框中某個(gè)項(xiàng)目,在事件過程中添加程序代碼如下:X= List1.ListInd

40、ex 若X=2,表明選擇列表框中第三個(gè)項(xiàng)目并反相顯示,其下標(biāo)(Index)值為2。ListCount屬性返回列表框中項(xiàng)目的總數(shù)目。該屬性只能在運(yùn)行中通過程序代碼進(jìn)行設(shè)置,語(yǔ)句格式為:N = ListX.ListCount (N 為列表框中項(xiàng)目的總數(shù)目)X為0,1,2。N1=List1.ListCount-1 (為列表框中最大的列表項(xiàng)下標(biāo))Columns屬性Columns屬性返回或設(shè)置一個(gè)值,且該屬性只能通過屬性窗口進(jìn)行設(shè)置,用以決定 ListBox 控件是水平還是垂直滾動(dòng)、以及如何顯示列中的項(xiàng)目。如果水平滾動(dòng),則 Columns 屬性決定顯示多少列。缺省值為0時(shí),代表所有項(xiàng)目為單列顯示,項(xiàng)目超

41、過列表框高度,列表框右邊自動(dòng)增加垂直滾動(dòng)條;當(dāng)n=1時(shí),代表所有項(xiàng)目為單列顯示,項(xiàng)目超過列表框高度,列表框下邊自動(dòng)增加水平滾動(dòng)條;當(dāng)1n=總項(xiàng)目數(shù)時(shí),代表所有項(xiàng)目為n列顯示,項(xiàng)目超過列表框高度,列表框下邊自動(dòng)增加水平滾動(dòng)條。例:把屏幕字體放入兩個(gè)具有不同Columns屬性的 ListBox 控件中。List1的 Columns 屬性為缺省值0,List2 的Columns 屬性設(shè)置為2。觀察運(yùn)行結(jié)果。Private Sub Form_Load()Dim I As Integer 聲明變量.List1.Move 50, 50, 2400, 1750 排列列表框List2.Move 2500, 5

42、0, 3000, 1750For I = 0 To Screen.FontCount - 1 把用屏幕字體添加到兩個(gè)列表框 List1.AddItem Screen.Fonts(I) List2.AddItem Screen.Fonts(I)Next IEnd Sub Multiselect屬性該屬性指示是否能夠在ListBox (FileListBox) 控件中進(jìn)行復(fù)選以及如何進(jìn)行復(fù)選。該屬性在運(yùn)行時(shí)不可用。屬性設(shè)置共有三個(gè)值0、1和2,缺省值為0。屬性值的含義:當(dāng)n=0時(shí),不允許復(fù)選;當(dāng)n=1時(shí),可用鼠標(biāo)或空格鍵復(fù)選;當(dāng)n=2時(shí),可用Shift、方向鍵(連續(xù)選)復(fù)選、Ctrl和鼠標(biāo)鍵來(lái)進(jìn)行

43、(不連續(xù))復(fù)選。注意:當(dāng)復(fù)選結(jié)束后,Listindex和Text的屬性只表示最后一次選擇值。Selected屬性該屬性在設(shè)計(jì)時(shí)不可用,該屬性返回為列表項(xiàng)的選中狀態(tài),當(dāng)列表框中的表項(xiàng)被選中,該屬性值為True(真);若為False(假),表示該項(xiàng)未被選擇。用語(yǔ)句檢查指定的表項(xiàng)是否被選擇,并返回一個(gè)邏輯值。語(yǔ)句格式為:列表框.Selected(索引值) “索引值”從0開始,使用時(shí)兩邊的()括號(hào)不能少。例如:判斷是否選中。Pd = List1.Selected(List1.ListIndex) Pd為返回的邏輯值另外,還可以用語(yǔ)句選擇指定表項(xiàng)或取消已選擇的表項(xiàng),語(yǔ)句格式為:列表框.Selected(

44、索引值)=True/FalseSelCount屬性返回在ListBox 控件中被選中項(xiàng)的數(shù)量。如果沒有項(xiàng)被選中,那么SelCount屬性將返回0值。反之它返回當(dāng)前被選中的列表項(xiàng)的數(shù)量。通常它與Selected一起使用,處理列表框中所選擇的項(xiàng)目數(shù),但Style屬性要設(shè)置為1,即其外觀為復(fù)選框形式。語(yǔ)句格式為: 列表框.SelCount例如:統(tǒng)計(jì)List1中被選中的列表項(xiàng)的數(shù)量,語(yǔ)句格式為:x = List1.SelCount x為存放選中列表項(xiàng)數(shù)量的變量Sorted屬性該屬性用來(lái)確定列表框中的項(xiàng)目是否按字母或數(shù)字升序排列。當(dāng)該屬性值為True時(shí),列表框中的項(xiàng)目是按字母或數(shù)字升序排列的;當(dāng)該屬性值

45、為False(缺省值)時(shí),列表框中的項(xiàng)目按加入列表框的先后次序排列。 Style 屬性該屬性只能在設(shè)計(jì)使用,用于指定控件外觀,共有兩個(gè)值0、1,缺省值為0。屬性值的含義:當(dāng)屬性值為0,其外觀為標(biāo)準(zhǔn)形式;當(dāng)屬性值為1,其外觀為復(fù)選框形式,如圖3-5所示。圖3-5 Style示例Text屬性該屬性只能在運(yùn)行時(shí)使用,返回被選中的列表項(xiàng)的文本(列表框內(nèi)最后一次選中的項(xiàng)目?jī)?nèi)容),并且被選中的項(xiàng)目?jī)?nèi)容不能被編輯。語(yǔ)句格式為: ListX.textX為1,2,。注:但可以利用List1.List(List1.ListIndex)語(yǔ)句改變選中的表項(xiàng)內(nèi)容。圖3-6 編輯List項(xiàng)目?jī)?nèi)容的錯(cuò)誤信息例如:用上述兩種

46、語(yǔ)句將列表框內(nèi)1中選中項(xiàng)的內(nèi)容輸出到窗體上。Private Sub List1_Click()Dim x, x1List1.Text = kkkkkkk 項(xiàng)目?jī)?nèi)容不能被編輯,如圖3-6x = List1.Text 選中的列表項(xiàng)的文本賦給變量XList1.List(List1.ListIndex) = llllllllx1 = List1.List(List1.ListIndex)Print x, x1End Sub例如:將列表框1中選中的列表項(xiàng)的文本賦給文本框。Text1.Text= List1.Text 3.4.2常用事件列表框經(jīng)常用到Click、 DblClick事件。在設(shè)計(jì)用戶界面時(shí),如

47、果把列表框作為用戶界面的一部分,對(duì)里面的表項(xiàng)進(jìn)行選擇,則常把讀出的表項(xiàng)與其它方法結(jié)合實(shí)現(xiàn)一個(gè)目標(biāo)。如用命令按鈕與配合列表框使用,當(dāng)單擊命令按鈕打開一個(gè)文件?;蚴请p擊后配合有關(guān)語(yǔ)句直接打開、執(zhí)行某個(gè)文件。圖3-7 List控件單擊事件示例例如:在窗體添加一個(gè)命令按鈕、一個(gè)列表框和一個(gè)文本框,如圖3-7所示。要求從列表框內(nèi)選擇一個(gè)表項(xiàng)(文件名),在單擊命令按鈕后,將該文件內(nèi)容放入文本框內(nèi)。Dim n, wj As StringPrivate Sub Command1_Click() If List1.ListIndex -1 Then Open C: & wj & For Inpu

48、t As #1 Line Input #1, n Close #1 Text1.Text = n Else MsgBox 請(qǐng)選擇項(xiàng)目后,在按顯示按鈕! End IfEnd Sub Private Sub Form_Load()List1.AddItem usa1.txtList1.AddItem usa2.txtList1.AddItem usa3.txtList1.AddItem usa4.txtForm1.Caption = 顯示文件End Sub Private Sub List1_Click()wj = List1.TextEnd Sub3.4.3常用方法列表框可以使用AddItem、

49、RemoveItem和Clear等方法,在運(yùn)行期間修改列表框的內(nèi)容。1. 增加列表中項(xiàng)目AddItem 方法該方法用于在列表框中添加單個(gè)項(xiàng)目,語(yǔ)句格式為: 列表框.AddItem 項(xiàng)目 ,索引值“項(xiàng)目”是要新增到列表的內(nèi)容,它必須是字符串類型。非字符串類型可通過Str函數(shù)或Format函數(shù)來(lái)轉(zhuǎn)換;如果省略“索引值”參數(shù), “項(xiàng)目”被放在列表框項(xiàng)目中最后項(xiàng)目的下面;如果給出“索引值”,則在列表框中指定位置添加“項(xiàng)目”。例如:List1.AddItem usa 默認(rèn)添加在最后 List1.AddItem usa,0 添加到到第一個(gè)位置(起始位置為0) 注意:列表框中的項(xiàng)目“索引值”是從0開始計(jì)數(shù),

50、并且“索引值”不能大于列表框中“項(xiàng)目數(shù)-1”。此外,列表框中的項(xiàng)目添加,也可以通過列表框中List屬性設(shè)置。如圖3-8所示:圖3-8 List屬性設(shè)置2. 刪除列表中項(xiàng)目RemoveItem 方法該方法用于在列表框中刪除指定的單個(gè)項(xiàng)目,語(yǔ)句格式為:列表框.RemoveItem 索引值 或列表框.RemoveItem ListX.Listindex注意:ListX(X為1,2,)。列表框每一項(xiàng)目都有一個(gè)“索引值”,第一個(gè)項(xiàng)目的“索引值”是0,第二個(gè)“索引值”是1,依此類推。刪除項(xiàng)目可通過刪除其“索引值”來(lái)實(shí)現(xiàn)。例如:刪除列表中第3項(xiàng)目:List1. RemoveItem 2 原來(lái)的第4項(xiàng)就變成了

51、第3項(xiàng)。3. 清除列表框中的全部項(xiàng)目Clear 該方法用于清除在列表框中的全部項(xiàng)目,語(yǔ)句格式為:列表框.Clear清除列表框中的所有項(xiàng)目執(zhí)行Clear 后,ListCount屬性重新被置為0。3.4.4 3.4.4 應(yīng)用舉例應(yīng)用舉例例如:通過此例觀察列表框的屬性、事件和方法。對(duì)象設(shè)置見下表。界面設(shè)計(jì)如圖3-9所示:圖3-9 List應(yīng)用舉例界面對(duì)象對(duì)象屬性屬性設(shè)置值設(shè)置值對(duì)象對(duì)象屬性屬性設(shè)置值設(shè)置值窗體窗體NameForm1列表框NameList1Caption列表框ZList空值空值標(biāo)簽標(biāo)簽1NameLabel1命令按鈕1NameCommand1Caption項(xiàng)目數(shù)Caption增加增加標(biāo)簽

52、標(biāo)簽2NameLabel2 命令按鈕2NameCommand2Caption空值Caption刪除刪除標(biāo)簽標(biāo)簽3NameLabel3命令按鈕3NameCommand3Caption索引值Caption清除清除標(biāo)簽標(biāo)簽4NameLabel4命令按鈕命令按鈕4NameCommand4Caption空值空值Caption插入插入表3-7 List應(yīng)用舉例界面控件設(shè)置程序如下:Private Sub Command1_Click() List1.AddItem 項(xiàng)目1 增加項(xiàng)目 List1.AddItem 項(xiàng)目2 List1.AddItem 項(xiàng)目3 Label2.Caption = List1.Lis

53、tCount 返回列表中共有多少個(gè)項(xiàng)目數(shù)End Sub Private Sub Command2_Click() 刪除Dim x As Integer x = List1.ListIndex If x = 0 Then List1.RemoveItem x 刪除指定項(xiàng)目 Label2.Caption = List1.ListCountEnd SubPrivate Sub Command3_Click() 清除 List1.Clear Label2.Caption = List1.ListCountEnd SubPrivate Sub Command4_Click() 插入Dim x1 As I

54、nteger x1 = List1.ListIndex 選擇項(xiàng)目(沒有選擇ListIndex值為-1) Label4.Caption = x1 If x1 = 0 Then List1.AddItem 新插入項(xiàng)目下標(biāo) & CStr(x1), x1 List1.ListIndex = x1 Else MsgBox 沒選擇項(xiàng)目 End If Label2.Caption = List1.ListCountEnd SubPrivate Sub Form_Load() Label2.Caption = List1.ListCountEnd Sub Private Sub List1_Click

55、()Dim x1 As Integer x1 = List1.ListIndex 選擇項(xiàng)目(沒有選擇ListIndex值為-1) Label4.Caption = x1 MsgBox 你選擇了列表框內(nèi)表項(xiàng)為: & Chr$(13) + Chr$(10) & _ List1.Text & ,其 下標(biāo)為: & CStr(x1)End Sub表3-8 屬性的設(shè)置例如:在窗體上添加兩個(gè)列表框和兩個(gè)命令按鈕,程序設(shè)計(jì)界面見圖3-10所示。要求單擊“添加”按鈕,將列表框1中選中的表項(xiàng)填加到列表框2中,或單擊“刪除”按鈕,刪除列表框2中表項(xiàng)并填加到列表框1中。創(chuàng)建界面,對(duì)象屬

56、性設(shè)置見下表:對(duì)象對(duì)象對(duì)象名稱對(duì)象名稱屬性屬性設(shè)置值設(shè)置值窗體窗體Form1CaptionForm1列表框列表框1List1List無(wú)無(wú)列表框列表框2List2List無(wú)無(wú)命令按鈕命令按鈕1Command1Caption添加添加命令按鈕命令按鈕2Command2Caption刪除刪除Style1程序如下:Private Sub Form_Load() List1.FontSize = 10 List2.FontSize = 10 List1.AddItem 日本 List1.AddItem 法國(guó) List1.AddItem 美國(guó) List1.AddItem 英國(guó) List2.AddItem 中

57、國(guó) List2.AddItem 德國(guó) List2.AddItem 馬來(lái)西亞End SubPrivate Sub Command1_Click()加條件判斷語(yǔ)句未選中表項(xiàng),還單擊添加按鈕。 If List1.ListIndex -1 Then List2.AddItem List1.Text List1.RemoveItem List1.ListIndex End IfEnd Sub Private Sub Command2_Click() List1.AddItem List2.Text List2.RemoveItem List2.ListIndexEnd Sub圖3-10 示例界面3.5

58、選擇控件組合框組合框(ComboBox)是組合文本框(TextBox)與列表框(ListBox)的特性而成的控件。它兼有文本框與列表框的功能。組合框的默認(rèn)名稱(Name)和Text屬性缺省值為ComboX(X為編號(hào),從1,2,依次順延)。3.5.1常用屬性前面介紹與列表框的屬性基本都能用于組合框。另外,還可以使用如下屬性:1. Style 屬性Style屬性只具有只讀屬性,是組合框的一個(gè)重要屬性,屬性的設(shè)置值有0(缺省值)、1和2。其屬性決定組合框的樣式和各自特點(diǎn)。不同的Style 屬性產(chǎn)生不同的組合框,即下拉式組合框、簡(jiǎn)單組合框和下拉式列表框。如圖3-11所示。圖3-11 組合框不同樣式示例

59、Style 屬性值能接收的事件0-下拉式組合框(有下拉選項(xiàng)、允許用戶輸入) 圖3.11左圖所示下拉式組合框,包括一個(gè)文本框和一個(gè)下拉式列表??梢詮牧斜磉x擇或在文本框中輸入。接收Click、DropDown;不接收Dblclick;在文本框內(nèi)輸入文本時(shí),可接收Change、KeyPress事件。程序運(yùn)行后,組合框在屏幕上的顯示。1-簡(jiǎn)單組合框(無(wú)下拉選項(xiàng)、允許用戶輸入)圖3.11居中圖所示簡(jiǎn)單組合框,包括一個(gè)文本框和一個(gè)不能下拉的列表。可以從列表中選擇或在文本框中輸入。接收Click、Dblclick;在文本框內(nèi)輸入文本時(shí),可接收Change、KeyPress事件。程序運(yùn)行后,組合框在屏幕上的顯

60、示。2-下拉式列表框(有下拉選項(xiàng)、不允許用戶輸入)圖3.11右圖所示下拉式列表框,僅允許從下拉式列表中選擇(適合選擇固定項(xiàng)),不能在文本框內(nèi)輸入文本。只接收Click、DropDown;程序運(yùn)行后,組合框在屏幕上的顯示。每個(gè)組合框都有它們各自的特點(diǎn),見下表:表3-9 組合框樣式2. Text 屬性該屬性值是用戶所選擇的項(xiàng)目的文本或直接從編輯區(qū)輸入的文本。該屬性可以通過屬性窗口設(shè)置,也可以在程序運(yùn)行時(shí)通過代碼進(jìn)行設(shè)置,語(yǔ)句格式為:ComboX.Text = “字符串”也可以利用該屬性給變量賦值,例如:給變量BL賦值,即BL= ComboX.Text。注意:當(dāng)組合框?yàn)椤?- 下拉式列表框”時(shí),Text 屬性為默認(rèn)值,不能編輯。 Private Sub Combo1_Change() 獲取編輯區(qū)內(nèi)編輯的文本(改變

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論