• 全部
  • VBS
  • .NET技术
  • VBA
  • VB网络编程
  • VB多媒体
  • VB数据库
  • VB控件
  • VB COM/DCOM
  • VB基础类
  • VB API
  • 问答

关于TextBox中只允许输入数字的问题

foxegg 2005-02-27 03:42:49
我想在TextBox中只允许输入数字,有没有什么属性可以设置?还有,怎么屏蔽掉某些键盘输入。
...全文
229 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Night_Elf 2005-02-27
Private Sub txtMobieTel_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtMobieTel.KeyPress
Select Case e.KeyChar
Case "0" To "9"

Case " " '加入退格符
Case Else
e.Handled = True '使输入无效的语句
End Select
End Sub
回复
hamadou 2005-02-27
Private Sub TextBox1_KeyPress(Byval sender As System.Object, Byval e As System.Windows.Forms.KeyPressEventArgs) Handles textBox1.KeyPress
If Char.IsNumber(e.KeyChar) Or e.KeyChar = Chr(Keys.Back) Then
Return
End If
e.Handled = True
End Sub
回复
机器人 2005-02-27
方法1:屏蔽用户除了数字键以外的输入。前提ImeMode = Disable让用户无法切换中文或其他输入法。
Private Sub TextBox1_KeyPress(Byval sender As System.Object, Byval e As System.Windows.Forms.KeyPressEventArgs) Handles textBox1.KeyPress
If Char.IsNumber(e.KeyChar) Or e.KeyChar = Chr(Keys.Back) Then '退格应该允许。
Return
End If
e.Handled = True
End Sub
方法2:在TextBox的Validing事件用正则表达式验证。
Private Sub textBox1_Validating(ByVal sender As Object, _
ByVal e As System.ComponentModel.CancelEventArgs) Handles textBox1.Validating

Dim numericRegex As Regex = new Regex("^\d+$")

if Not numericRegex.Match(CType(sender,TextBox).Text) Then
' Cancel the event and select the text to be corrected by the user.
e.Cancel = True
textBox1.Select(0, textBox1.Text.Length)
End If
End Sub
回复
yizhixiaozhu 2005-02-27
用js 或者用验证控件
回复
相关推荐
发帖
VB
创建于2007-09-28

1.6w+

社区成员

VB技术相关讨论,主要为经典vb,即VB6.0
申请成为版主
帖子事件
创建了帖子
2005-02-27 03:42
社区公告
暂无公告