给定一个texbox,我该如何完全忽略非数字字符?所以如果我按“A”或“Z”,这些字符将永远不会出现在文本框中。我想运行一些代码,如果用户试图输入数字,如果他试图输入非数字太..只接受文本框中的数字
0
A
回答
5
试试这个
Private Sub textBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles textBox1.KeyPress
If Char.IsDigit(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
如果e.Handled
设置为true非 - 数字不会输入到文本框中;否则事件消息像通常那样流动。
编辑:
为了处理退格键和删除是多一点的工作,但你可以试试这个
Private Sub textBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles textBox1.KeyPress
If Char.IsDigit(e.KeyChar) OrElse e.KeyChar = CChar(Keys.Delete) OrElse e.KeyChar = CChar(Keys.Back) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
Protected Overrides Function ProcessCmdKey(ByRef msg As Message, keyData As Keys) As Boolean
If keyData = Keys.Delete OrElse keyData = Keys.Back Then
OnKeyPress(New KeyPressEventArgs(CChar(keyData))
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
KeyPress事件不会被解雇了删除键和Backspace键,因此ProcessCmdKey到覆盖手动调用形式的的OnKeyPress()
0
您可以运行在事件的OnKeyPress测试(或任何事件名称是的WinForms)
0
0
下面的代码工作:
Private Sub txtSalary_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtSalary.KeyPress
If (e.KeyChar < Chr(48) Or e.KeyChar > Chr(57)) And e.KeyChar <> Chr(8) Then
e.Handled = True
End If
End Sub
相关问题
- 1. 如何创建只接受数字的文本框和只接受WPF中的字母的文本框?
- 2. Silverlight文本框只接受小数点
- 3. 如何让文本框只接受数字字符?
- 4. VB文本框只接受数字的概率
- 5. 如何使文本框数组只接受特定的字母?
- 6. 只为数字掩盖文本框,但不会接受BackSpace
- 7. 使VBA表单文本框只接受数字(包括+, - 和)
- 8. 限制文本框只接受10位数字
- 9. 我想作一个EditFor文本框接受数字只
- 10. 文本输入框只接受Backspace
- 11. 如何只接受WPF文本框中的整数
- 12. 接受在文本框中只有字符输入
- 13. 如何让文本框只接受字母字符?
- 14. 如何使文本框只接受字母字符
- 15. 只接受字母使用jquery掩码的文本框
- 16. 如何使文本框只接受数字并用逗号格式化数字?
- 17. 屏蔽文本框只接受字母asp.net
- 18. Rails 3 - 使文本字段只接受数字值
- 19. 文本框接受数值仅
- 20. 如何使文本框场只接受十进制值jQuery中
- 21. 数字字段只接受数和`,`
- 22. 不接受用点号键入数字的文本框格式
- 23. 在文本框中只显示数字
- 24. 如何让文本框只接受有效的电子邮件?
- 25. 从任一文本框中接受值
- 26. 接受文本框中的特定字符
- 27. 文本框只有字母,数字和 -
- 28. 验证文本框以接受多个数字
- 29. 只有数字的文本框
- 30. javascript函数只接受4位数字
你怎么样看这个问题的下'的链接权Related'?前两种看起来很有希望 – RichardTheKiwi 2011-04-06 23:39:32