vb編程中往往要限制文本框中只允許輸入數字,防止獲取文本框的內容時發生類型不匹配的錯誤。下面介紹實現限制文本框中只允許輸入數字的方法。
工具/原料
Visual Basic 6.0
方法/步驟
新建一個標準EXE程序。
繪製界面,添加一個 Textbox 控件,改名為 txbNumber。
編寫代碼。在代碼窗口中,添加 txbNumber_KeyPress 事件。
查ASCII碼錶,得到0的ASCII碼是48。輸入以下語句:
If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0
這條語句用來判斷輸入的字符是否在0-9的範圍,如果不在這個範圍,就把這個輸入的字符屏蔽掉。
但這麼做會產生一個問題,就是使用BackSpace刪除字符的時候,由於按鍵被屏蔽,無法刪除。怎麼解決呢?解決方法很簡單,只要在上面的語句前在添加一條語句:
If KeyAscii = 8 Then Exit Sub
意思是,如果按了BackSpace,就直接退出該過程,按鍵就不會被屏蔽了。
調試運行。按F5,在文本框中輸入任意字符,可以看到只有數字能顯示在文本框中。按退格鍵,字符也能正常刪除。
如果輸入的數字可能是小數,那麼還要添加如下代碼:
If KeyAscii = 46 And Not CBool(InStr(txbNumber, ".")) Then Exit Sub
當輸入小數點時,程序判斷文本框中是否已有小數點(因為一個小數中不可能有多個小數點),如果沒有小數點,則允許輸入。