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

如何才能让VB里的TEXT控件只能输入数字?或只能输入英文,或不能输入数字等。。我是初学者,大家尽量说得简单点!!注明得清楚点,谢谢!!... 如何才能让VB里的TEXT控件只能输入数字?
或只能输入英文,或不能输入数字等。。
我是初学者,大家尽量说得简单点!!注明得清楚点,谢谢!!
展开
 我来答
静风无尘
2008-01-27 · 超过23用户采纳过TA的回答
知道答主
回答量:177
采纳率:0%
帮助的人:57.5万
展开全部
首先添加好文本框控件TextBox后把属性IMEMode的值改成Disable,这样在该文本框中就不能使用中文输入法了。然后对文本框的KeyPress事件添加以下代码
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Textbox1.KeyPress
If Char.IsDigit(e.KeyChar) Or e.KeyChar = Chr(8) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
其中e.KeyChar是键盘输入的键对应的字符,IsDigit函数可以判断是否为0到9的数字,Chr(8)为退格键,当e.Handled为True时,程序认为该KeyPress事件已经被处理过了,文本框的内容也就不会发生变化了
对于限制其他的类型,只要对 Chr()更改就行了。如只需要输入英文字母的条件是:(e.KeyChar >= Chr(65) and e.KeyChar <=Chr(90)) or(e.KeyChar >= Chr(97) and e.KeyChar <=Chr(122))
huanglenzhi
推荐于2017-10-14 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517163
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部

  在文本框的更改事件中,使用IsNumeric函数进行字符类型的判断,如果出错则清空输入框,弹出提示信息,范例代码如下:

Private Sub Text1_Change()
If IsNumeric(Text1.Text) = False Then
MsgBox "只能输入数字"
Text1.Text = ""
Text1.SetFocus
End If
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lyglay
推荐于2017-09-16 · TA获得超过1137个赞
知道大有可为答主
回答量:975
采纳率:0%
帮助的人:0
展开全部
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
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式