热心网友

楼上说的也没错,不过一般的时候数字都有用到小数点“。”和负号“-”的时候,所以可以这样做把上面的程序稍微改动一下。Private Sub Form_Load()Text1= ""End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer) select case str(Keyascii) '多分枝用Select case 语句比较好 case "0" to "9" '如果按键在 0-9 之间 或者 case "。", "-", str(8) '按下小数点,负号,或者删除键BackScape键则不执行特殊操作 case else KeyAscii = 0 '取消本次按键事件。 Beep '提示输入错误 End selectEnd Sub 。

热心网友

楼上几位说的都不错,但是VB里现在还没有特别完美的方法解决楼主的问题,上面的说法虽然是能限制键盘输入数字,但是不能限制粘贴数字。要想实现完善的最好还是通过API或自定义组件一些方法。

热心网友

下面代码可实现文本框只能输入数字:Option ExplicitPrivate Sub Form_Load() Text1= ""End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii Asc("9") Then KeyAscii = 0 '取消字符。 Beep '发出错误信号。 End IfEnd Sub如需输入小数点,则代码如下:Private Sub Form_Load()Text1 = ""End SubPrivate Sub text1_KeyPress(KeyAscii As Integer) If KeyAscii Asc("。") Or KeyAscii Asc("9") And KeyAscii Asc("。") Or KeyAscii = Asc("/") Then KeyAscii = 0 '取消字符。 End IfEnd Sub。