Visual Basic 6.0 – TextBox aceptar solo numeros

Written by lopezatienza on 13/01/2009 – 11:51 -

Un ejemplo de como aceptar datos numéricos.

Tomado de esta web.

Sub Text1_Keypress(KeyAscii As Integer)

        If KeyAscii <> Asc("9") Then

            'KeyAscii = 8 es el retroceso o BackSpace

            If KeyAscii <> 8 Then

                KeyAscii = 0

            End If

        End If

    End Sub

 

Nuevo:

 

    Private Sub Text1_Keypress(ByVal KeyAscii As Integer)

        If Not IsNumeric(Chr$(KeyAscii)) And KeyAscii <> 8 Then KeyAscii = 0

    End Sub


Autor: Antonio Lopez Atienza


Tags:
Posted in Visual Basic 6.0 | 2 Comments »

2 Comments to “Visual Basic 6.0 – TextBox aceptar solo numeros”

  1. felipe Says:

    no lo entiendo podrias explicarmelo porfavor

  2. lopezatienza Says:

    Claro, la funcion que vemos:

    Sub Text1_Keypress(KeyAscii As Integer)

    Se refiere al evento ‘Keypress’ de un TextBox llamado Text1.

    Entonces si te fijas este evento captura la tecla que se pulsa con el parámetro KeyAscii que es un Integer.

    A continuación comparamos si este parámetro equivale a 9, si es así es que la tecla que se ha pulsado es el retroceso o BackSpace, con lo no entraría en la condición y permitiría que se pulsara esa tecla.

    Pos lo que sólo entraría en esta primera condición si es diferente que ‘9’.

    A continuación compruebo que sea diferente de ‘8’, que sería siempre que sea no numérico.

    Por lo que siempre que sea diferente de ‘9’ y de ‘8’ lo que hace es igualar el parámetro a ‘0’, lo que produce que invalide todas las teclas que no cumplan las condiciones anteriores.

    Espero te sirva de ayuda.

    Un saludo.

Leave a Comment

 

RSS
MCC D5E