VISUAL BASIC 2008


CODIGO PARA ACEPTAR SOLO CARACTERES DE TIPO NUMERO





'CÓDIGO PARA QUE SOLO ACPTE DATOS DE TIPO NUMERO, EN LA CLAVE DE ALUMNO

Private Sub tExtboX1_KeyPress(ByVal sender As Object, _
ByVal e As System.Windows.Forms.KeyPressEventArgs) _
Handles TextBox1.KeyPress

If Char.IsNumber(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsSeparator(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End Sub

Otro codigo solo para acpeptar caracteres de tipo numero


Dim numeros() As Char = {“1″, “2″, “3″, “4″, “5″, “6″, “7″, “8″, “9″, “0″}

Private Sub txtCuadro_KeyPress(ByVal sender As Object, _
ByVal e As System.Windows.Forms.KeyPressEventArgs) _
Handles txtCuadro.KeyPress

If Array.IndexOf(numeros, e.KeyChar) >= 0 Then
e.Handled = False
Else
e.Handled = True
End If


lo mismo pero para el TXTABONO, que tengo declarado

'SENTENCIA DE CÓDIGO PARA CONTROLAR EL DATO QUE SEA INTRODUCIDO
'Solo caracteres de tipo número, y la tecla backspace para borrar algun dato que sea erroneo.
'El cuadro de texto tendrá limite de caracteres para introducir datos, (8 caracteres)
Private Sub txtabono_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtabono.KeyPress



If (Asc(e.KeyChar) >= 48 And Asc(e.KeyChar) <= 57) Or Asc(e.KeyChar) = 8 Then
'Los únicos caracteres que se permitirá introducir en el TextBox serán los números del 0 al 9 (ASCII del 48 al 57) y el retroceso de espacio o backspace para borrar números introducidos, que es el ASCII 8.

Dim numdigitos As Integer = Len(txtabono.Text) 'Para contar cuántos dígitos hay en el TextBox.

If numdigitos = 6 And (Asc(e.KeyChar) <> 8) Then 'Si ya hay ocho dígitos, ya no se podrá escribir otro, pero siempre se podrá usar la tecla Backspace.

e.KeyChar = "" 'Borra el dígito que se ha digitado.

End If

Else 'Si la tecla presionada es diferente de un dígito o de la tecla Backspace.

e.KeyChar = "" 'Reemplaza la tecla digitada con el valor de nada para que no se puedan introducir caracteres inválidos.

End If

End Sub


End Class

sentencia de codigo para los botones

IF Asc(e.KeyChar) = 46 Then
e.Handled = MsgBox("El boton que presionó no existe, favor de sustituirlo por coma", MsgBoxStyle.Exclamation, "error")
"Lo que hace lo anterior es mandar un cuadro dialogo de error al oprimir la tecla "." (que corresponde al numero 46 EN EL codigo asccii)"


Paralo codigos de tecla ver:
http://livedocs.adobe.com/flash/9.0_es/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001136.html


0 comentarios: