Programación General > Visual Basic para principiantes
Mostrar Errores en Formulario de Ocx
(1/1)
ferhn:
Un Ejemplo en un formulario tengo dos label una llamada lblmsj y otra llamada lblError ademas en el formulario tengo una OCX que contine un texto llamado txtNum, como haga para que cada vez que mofique txtNum me muestre ese valor en lblmsj y que cuando en txtNum ingrese cualquier dato que no sea numerrico lblError.Caption me muestre "El valor debe ser numerico"......???? :(
cpmario:
Revisa el foro, encontrarás varias discusiones con este tema, por ejemplo:
viewtopic.php?f=39&t=26929&p=98576&hilit=textbox#p98576
:comp:
ferhn:
Muy bueno, pero no aclara mis dudas de como mostrar esos mensajes con un formulario y OCXs no modulo, en los modulos y clases se como hacerlo... :mellow:
Nebire:
--- Cita de: "ferhn" --- en un formulario tengo dos label una llamada lblmsj y otra llamada lblError .... ademas en el formulario tengo una OCX que contine un texto llamado txtNum, como haga para que cada vez que mofique txtNum me muestre ese valor en lblmsj
--- Fin de la cita ---
En el OCX tiwenes que incluir un evento tipo 'Change' :
--- Código: Text ---public event Change() ' Luego sobre el evento change del txtnum debes provocarlo validarlo private sub TxtNum_Change() raiseEvent Change()end sub entonces ahora la instancia del OCX ya recibe un evento change, si suponemos que tu ocx se llama MiTextBox1 puedes buscar el evento change para escribir el código pertinente.
--- Cita de: "ferhn" ---...y que cuando en txtNum ingrese cualquier dato que no sea numerrico lblError.Caption me muestre "El valor debe ser numerico"......???? :(
--- Fin de la cita ---
Para esto nuevamente debes crear un evento, por ejemplo :
--- Código: Text ---Public event NoNumero En alguno de los eventos del TXTNum, por ejemplo Keypress, validas...Private Sub TXTNum_KeyPress(KeyAscii As Integer) if KeyPress <48 or Keypress >57 then KeyPress=0 ' borramos el carácter introducido RaiseEvent NoNumero end ifEnd Sub' debes notar que el punto ó la coma forman parte también de un número, por lo que deben validarse también eso sí, nunca van más de 1 en una misma cifra... 'Luego en el formulario trabajando sobre el evento de la instancia del OCX recibes cuando suceda la señal y la tratas como desees en tu caso:private MiTextBox1_NoNumero() lblerror.caption="El valor debe ser numerico"end sub ' aunque es mejor no mostrar ese error en un label, si no se va a borrar tras ser leído, un msgbox sería más correcto...private MiTextBox1_NoNumero() msgbox "El valor debe ser numerico"end sub
ferhn:
Exelente Gracias Amigo :good:
Navegación
Ir a la versión completa