在Visual Basic中,文本框(TextBox)是最常用的控件,熟練運用文本框是開發(fā)出高質(zhì)量的應(yīng)用程序的基礎(chǔ)。筆者在從事應(yīng)用程序開發(fā)中,摸索出有關(guān)文本框的應(yīng)用技巧,寫出來與VB愛好者共享。
1、設(shè)置只讀文本框
有些時候在窗口顯示一段信息,但又不希望用戶去改變它,怎樣實現(xiàn)文本的只讀呢?首先,我們可以利用標(biāo)簽框(label)的只讀屬性,以標(biāo)簽來代替文本框以實現(xiàn)只讀屬性,但也可以用小程序?qū)崿F(xiàn)真正的文本框的只讀。
Sub Text1_KeyPress (keyascii As Integer)
keyascii = 0 End Sub 或者也可以用sendkey方法使文本框失去焦點,如以下程序:
Sub Text1_KeyDown (KeyCode As Integer, Shift As Integer)
SendKeys "{tab}" End Sub 或者直接設(shè)置控件的屬性來實現(xiàn),具體操作如下:
設(shè)置Text1.Enabled=True,這樣設(shè)置后Text1無法獲得焦點
設(shè)置Text1.Locked=True,這樣設(shè)置后Text1可以獲得焦點
2、限定文本框的輸入內(nèi)容和格式
以下程序可以實現(xiàn)限定文本框只能輸入數(shù)字:
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii < Asc(0) Or KeyAscii > Asc(9) Then KeyAscii = 0 MsgBox "請輸入數(shù)字" End If End Sub 若想限定文本框輸入格式,可以使用VB的FORMAT函數(shù),也可以使用專業(yè)版的屏蔽控件(Masked Edit),通過設(shè)定屏蔽控件的Mask屬性可以對文本框的輸入格式作精確控制。
3、為TextBox創(chuàng)建快捷鍵
VB規(guī)定,添加在窗體上的控件均在其Tabindex屬性中記載其加載順序,程序運行時焦點按Tabindex屬性規(guī)定的順序在控件間跳轉(zhuǎn)。而為了簡化操作,可VB中為任何具有caption的屬性的控制創(chuàng)建快捷鍵,這通過caption屬性中在想作為快捷鍵的字母前加&號實現(xiàn)。但有一個問題值得注意,而類似文本框這樣的控件無caption這樣的屬性,這時可將標(biāo)簽與文本框同時使用。為lable創(chuàng)建快捷鍵,標(biāo)簽Tabindex屬性設(shè)置比文本框小1,又因為label不能接收按點,焦點會自動跳至文本框。這相當(dāng)于為文本框創(chuàng)建了快捷鍵。具體步驟如下:
(1)首先繪制標(biāo)簽,再繪制文本框。或隨意繪制各種控制,將標(biāo)簽Tabindex屬性設(shè)置比文本框小1
(2)在標(biāo)簽的caption屬性中使用“&”號設(shè)定快捷鍵
這樣就相當(dāng)于為文本框設(shè)定了快捷鍵,當(dāng)你按下標(biāo)簽框的快捷鍵時,焦點就會跳至文本框上。
4、在設(shè)計時實現(xiàn)文本框換行
對于文本框,在設(shè)計屬性窗口不能輸入換行符,但可以再程序執(zhí)行時用代碼來換行,即使用ASCII字符的13和10,如下列小程序就可將兩行文本放入文本框:
Sub form_load( )
NL=chr(13)+chr(10) text1.text=“my name is”& NL &“liu qiang” End sub 5、創(chuàng)建口令文本框
創(chuàng)建口令文本框可用設(shè)置屬性的方法,也可以通過調(diào)用WINDOWS的API應(yīng)用函數(shù)接口來實現(xiàn)。首先,文本框的屬性Passwordchar和maxlength可用來設(shè)置口令框。其中Passwordchar指定文本框顯示的字符,如指定“*”,則在文本框內(nèi)顯示“*”,Maxlength確定文本框中能輸入幾個字符。超過Maxlength以后,文本框發(fā)出警告聲,不能接收更多的字符。若使用WINDOWS應(yīng)用函數(shù)接口,可用GetWindowLong、SetWindowsLong和SendMessage等接口函數(shù)來實現(xiàn),有興趣的讀者可查閱Windows API函數(shù)手冊或VB的聯(lián)機幫助文件,這里就不一一贅述了。
本文來自編程入門網(wǎng):http://www./Programming/vb/200910/11518.htm |
|
來自: 風(fēng)雨無阻. > 《吃點VB》