PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 24 → Al salir de un control campo de entrada se puede saber si es porque hemos pulsado un botón, Cancelar, por ejemplo
Al salir de un control campo de entrada se puede saber si es porque hemos pulsado un botón, Cancelar, por ejemplo
Started by GARCIA SALVADOR, Jun., 25 2020 8:55 PM - 3 replies
Registered member
12 messages
Posted on June, 25 2020 - 8:55 PM
Buenas,
Al salir de un campo de entrada realizamos varias validaciones, con referencia a otros campos de la ventana y/o con tablas de las Bases de Datos.
El problema que tenemos es que cuando pulsamos el botón de Cancelar la ventana, también nos realiza estas validaciones y esto no nos interesa.
En nuestro actual software hay una función que nos permite saber el último control pulsado, por lo que en las validaciones al salir del campo, las hacemos solo si no se pulso Cancelar.

¿Como podemos hacer lo mismo en WinDev?.

Un saludo,
Registered member
16 messages
Posted on June, 25 2020 - 10:08 PM
Podrías usar la propiedad ..FocusOnClick o si quieres algo más complejo yo lo haría con una variable inicializado en "false" de manera global y que al presionar el botón tome el valor "true".

--
__________________________
-ercnet.elias@gmail.com-
-Ing. Elias Ramos Cantù-
Registered member
16 messages
Posted on June, 25 2020 - 10:13 PM
Publicado el 25,junio 2020 - 21:08
Podrías usar la propiedad ..FocusOnClick o si quieres algo más complejo yo lo haría con una variable inicializada en "false" de manera global y que al presionar el botón tome el valor "true". Cada botón tiene un Tipo(Type) y si lo dejas como cancelar automáticamente lo tomara la ventana como el botón de salir predeterminado por lo que ejecuta lo que tengas en el Click. Podrías simplemente quitarlo.

--
__________________________
-ercnet.elias@gmail.com-
-Ing. Elias Ramos Cantù-
Registered member
12 messages
Posted on June, 26 2020 - 11:59 AM
Buenas,
He probado lo siguiente:
Salida de EDT_Cdg01
IF BTN_Cancel..FocusOnClick = True THEN
Info("BTN_Cancel")
END
Y siempre me da en mensaje, tanto si pulso BTN_Cancel, como si salgo del campo de entrada EDT_Cdg01.
Y lo que necesito es que cuando pulse BTN_Cancel y se ejecute el código del campo de entrada EDT_Cdg01, pueda salir sin hacer el resto de código.

Un saludo,