Programación General > Visual Basic 6.0 e inferiores
Sobre Restringir Entradas En Los Textbox
supra:
Hola alguien sabe como puedo restringir la entrada de los textbox para datos
numericos, es decir que solo me accepte x cantidad de digitos y dos
decimales. Tambien el formato fecha a dd/mm/aaaa.
He probado una demo de input de ComponentOne, pero extrañamente se me
desactiva mi teclado al utilizar el enter muchas veces queriendo trasladarme
de un control a otro.
Es por eso que quiero hacerlo con los tradicionales textbox, no importa lo
que cueste.
Saludos y gracias
Kev:
Para la cantidad de caracteres que reciva el textbox debes especificarlo en su propiedad MaxLength, ahora para que solo te acepte algunos caracteres(en tu caso numeros, punto, coma y barra para las fechas) tienes que utilizar el evento KeyPress donde te valuda cada tecla que presionas, en este evento utilizas KeyAscii para saber que tecla se presiono, validad un rango las excepciones que va a aceptar el TextBox.
Ejemplo, aca por ejemplo la tecla ENTER vale 13 segun codigo ASCII, si presiona enter muestra un mensaje caso contrario no muestra nada, ni el texbox escribe nada
--- Código: Text --- Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then MsgBox ("Presiono Enter")ElseKeyAscii = 0End IfEnd Sub
Salu2
:comp:
Cyclop:
Otra opcion seria que uses el Control ActiveX Mask Edit
Salu2
Cyclop
supra:
Hola Cyclop, ya he probado el maskedit, pero este me formatea la entrada una vez insertado el dato, aparte de eso quiero formatearlo al ingresar el dato.
Saludos.
y sigo intentandolo
Brroz:
Hola supra.
Creo que lo más simple es controlar el evento KeyPress del control. Fíjate en el ejemplo para controlar la entrada de números en un TextBox:
--- Código: Text --- Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii <> 8 _ and (KeyAscii < 48 Or KeyAscii > 57) _ And KeyAscii <> 44 Then KeyAscii = 0 End Sub
Abur
Navegación
[#] Página Siguiente
Ir a la versión completa