我们有时希望某个文本框只能输入数字,不能输入字符。有时希望用户在文本框中输入的数字最大不能超过某个值。这个对于vb.net来说都是太Easy了。

我们可以 通过 在  文本框的 KeyPress 事件  中添加代码就可以非常轻松的实现这种效果。

比如我们希望文本框中只能输入字符 a ,那么我们可以这样写:

Private 
    
  Sub TextBox1_KeyPress() 
  Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As   System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        If e.KeyChar <> "a" Then
            e.Handled = True
        End If
    End Sub 
  
 
或者
 
   
Private     
  Sub TextBox1_KeyPress() 
  Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As   System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        If e.KeyChar <> "a" Then
            e.KeyChar = ""
        End If
    End Sub

vb.net学习总结四(取消键盘的输入)_textbox


如果想让文本框只能接受数字,则可以这样写(这个是 C#,但是与vb.net只有语法上的差异):



private    void textBox1_KeyPress(   object 
   sender, System.Windows.Forms.KeyPressEventArgs e)
{
         if   (e.KeyChar 
  <=" 
  0"|| e.KeyChar>="9") 
  
         {
             e.KeyChar   ="";   
          }
}

从前面的两个例子我们我们可以知道。只要将System.Windows.Forms.KeyPressEventArgs  对象的 KeyChar 属性的值清空,就会取消当前的键盘输入。也可以将 System.Windows.Forms.KeyPressEventArgs 对象的Handled属性置成true。来取消当前输入。e.Handled表示当前的输入是否处理过,如果为true,则表示处理过。所以当你用程序将它置成 true,后,系统就不再处理它了,这样,这次输入就被取消了。