Textbox que acepta solo números y punto decimal - VB


Primero, debemos crear la funcion:
Public Sub NumerosyDecimal(ByVal CajaTexto As Windows.Forms.TextBox, ByVal e As System.Windows.Forms.KeyPressEventArgs)
  If Char.IsDigit(e.KeyChar) Then
   e.Handled = False
  ElseIf Char.IsControl(e.KeyChar) Then
   e.Handled = False
  ElseIf e.KeyChar = "." And Not CajaTexto.Text.IndexOf(".") Then
   e.Handled = True
  ElseIf e.KeyChar = "." Then
   e.Handled = False
  Else
   e.Handled = True
  End If
 End Sub
Luego invocarla en el evento keypress de cada caja de texto
 Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
    NumerosyDecimal(TextBox1, e)
 End Sub

Comentarios

Entradas populares