VB.NET版机房收费系统之限制textbox输入

我在优化机房收费时候想要限制textBox控件的输入,不允许输入非法字符,可是我找了好几天都没有找到,我在第一遍机房收费的时候没有好好做,很多功能就没有实现,现在遇到这个功能不能实现,我怎么忍心再放弃啊...之后我想,问问别人吧,结果都跟我说“在第一遍的时候这个功能我已经实现了,所以第二遍的时候就没做”,额...我就去找了他们曾经写过得博客,如何限制textBox的输入,可是VB6.0上的代码用到VB.net却不能实现,好郁闷。

然后我又去查,但只找到了怎样只能输入数字,这我就已经开心的不行了!,我想继续优化,比如限制输入汉字和字母...我想用ascii码限制,无奈我快崩溃了都没弄出来...我只好找外援了,荣凯兄一直跟我说用ascii码限制,所以我就他拉了过来...

修改的过程并不像我们想的那么简单,荣凯兄噼里啪啦的整了一个多小时,终于功夫不负有心人,达到了我们想要的结果。


姓名只可以可以输入汉字和字母,否则你按下键的时候就会有提示,而且在textBox框中不会显示不允许输入的内容




卡号只能输入数字,输入其他值就提示,“只能输入数字!”textBox框中不显示不允许输入的内容




密码可以输入数字和字母,通过设置ImeMode属性disable ,不管在中文输入下还是在英文输入下,按下字母都只能显示字母而不能显示汉字


好了,服务一下大众吧,上代码

 Private Sub txtName_KeyPress(sender As Object,e As KeyPressEventArgs) Handles txtName.KeyPress
        If Char.IsLetter(e.KeyChar) Or e.KeyChar = Chr(8) Then  ' e.KeyChar = Chr(8)为删除键
            e.Handled = False
        Else
            e.Handled = True '事件己处理
            MsgBox("请输入汉字或字母!","提示!")
        End If
        txtName.MaxLength = 11
    End Sub

  Private Sub txtPWD2_KeyPress(sender As Object,e As KeyPressEventArgs) Handles txtPWD2.KeyPress
        'vb.net textBox控件 限制输入,只能输入数字
        txtPWD2.ImeMode = Windows.Forms.ImeMode.disable

        If Char.IsDigit(e.KeyChar) Or e.KeyChar = Chr(8) Or Char.IsLetter(e.KeyChar) Then
            e.Handled = False
        Else
            e.Handled = True '事件己处理
            MsgBox("只能输入数字或字母!","提示!")
        End If

        '限制textBox长度
        txtPWD2.MaxLength = 11
    End Sub

  Private Sub txtUserID_KeyPress(sender As Object,e As KeyPressEventArgs) Handles txtUserID.KeyPress
        'vb.net textBox控件 限制输入,只能输入数字
        txtUserID.ImeMode = Windows.Forms.ImeMode.disable
        If Char.IsDigit(e.KeyChar) Or e.KeyChar = Chr(8) Then
            e.Handled = False
        Else
            e.Handled = True '事件己处理
            MsgBox("只能输入数字!","提示!")
        End If

        '限制textBox长度
        txtUserID.MaxLength = 11
    End Sub
从这件事上看...即使看上去很简单的功能,也有必要自己上手实践一下啊...

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...