Vb怎么让text只能输入数字

如题所述

如果是在输完之后判断,则可以用if val(text1.text)<>0 then
如果是每输入一个就判断,那么要用键盘事件,判断assii码,30H到39H之间的就是数字(即48到57之间)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-08-03
Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)

    If (KeyAscii < 48 Or KeyAscii > 57) And KeyAscii <> 8 Then KeyAscii = 0

End Sub

亲测好用!望采纳

追问

看不懂哎,能解释下么

追答

在窗体上画一个Text1。
KeyAscii(AscII码)就是每一个字符所对应的代号。
0的AscII码是48,1的AscII码是49,……,9的AscII码是57。
KeyAscii=8表示退格键Backspace。
KeyAscii=0表示没有字符(vbNullString)
这些代码的意思就是,如果键盘输入的字符不是0~9或者退格键,就不在文本框中显示。

本回答被提问者采纳
相似回答