永发信息网

vb写代码表示只能输入数值

答案:1  悬赏:40  手机版
解决时间 2021-02-05 19:33
  • 提问者网友:不要迷恋哥
  • 2021-02-05 05:53
vb写代码表示只能输入数值
最佳答案
  • 五星知识达人网友:你可爱的野爹
  • 2021-02-05 06:50
两种实现方法。
还有一种转换方法
第一种:
需要在TextBox的Change事件中写,假设TextBox的名字是Text1(下同)
Text1.Text = Val(Text1.Text)
Text1.SelStart = Len(Text1.Text)这种可以在输入任何英文的时候都会消失,输入不进去

缺点是如果在数字开头打了非数字(字母、汉字、符号),数字就会变成0


第二种:
随意在什么地方写,可以在TextBox的Change写,也可以在TextBox的Lostforce(失去焦点,比如去点按钮或者其他文本框的时候,类似于网上注册的时候,填完了ID去填密码然后提示你ID不对),或者在最后的“确认”按钮中写(类似网上注册的时候,点击提交的时候提示你有什么不对)
If IsNumeric(Text1.Text) = False Then
    '如果非纯数据,执行
End If

第三种:
可以类似像第一种一样转换,不过不会因为在开头写而被变成0
Dim aa As Integer, a As String, cp As String
With Text1
aa = Len(.Text)
For i = 1 To Len(.Text)
    a = Mid(.Text, i, 1)    '读取出一位(依次)
    If IsNumeric(a) Then cp = cp & a '如果是数字 整合到cp中
Next i
.Text = Val(cp)              '重新输入Text1
.SelStart = Len(.Text)        '让光标移动到末尾
End With

以上,不会可追问
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯