开启左侧

如何才能让VB里的TEXT控件只能输入数字?

[复制链接]
etthink 发表于 2009-3-25 04:47:54 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
Const xStr As String = "0123456789"
'先声明一个常量,并把你想禁用或允许输入的内容赋值给它

Private Sub Text1_KeyPress(KeyAscii As Integer)
'只能输入数字
KeyAscii = IIf(InStr(xStr & Chr(8), Chr(KeyAscii)), KeyAscii, 0)
End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)
'只能输入数字以外的字符
KeyAscii = IIf(InStr(xStr, Chr(KeyAscii)), 0, KeyAscii)
End Sub
学教育技术,上教育技术论坛!http://www.etthink.com

精彩评论2

正序浏览
etthink 发表于 2009-3-25 04:51:11 | 显示全部楼层
楼上说的也没错,不过
一般的时候数字都有用到小数点“.”和负号“-”的时候,所以可以这样做
把上面的程序稍微改动一下。

Private Sub Form_Load()
Text1= ""
End Sub

Private 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 select
End Sub
学教育技术,上教育技术论坛!http://www.etthink.com
 楼主| yuyankang 发表于 2011-9-16 15:48:31 | 显示全部楼层
说到底还不如,禁止输入字母和特殊字符,按键事件中应该有,哥哥是学习c#的!不明白!
欢迎大家多发帖,参与讨论,增进彼此了解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


11关注

462粉丝

7844帖子

推荐阅读更多+
会员达人更多+
广告位

最新信息

更多+

关注我们:教育技术人

官方微信

官方微博

教育技术热线:

13955453231

学教育技术,上教育技术论坛!

教育技术论坛征稿范围:教育技术应用案例、教程文章、优秀作品等。

Email:sf@etthink.com

Copyright   ©2007-2026  应用思考-教育技术论坛  Powered by©Discuz!  技术支持:且行资源    ( 皖ICP备10014945号-4 )