Capturar Cierre de Formulario

vForum público de la plataforma de desarrollo Velneo

Moderador: vCoaches

Responder
Avatar de Usuario
gAb
vAdviser
vAdviser
Mensajes: 311
Registrado: 28 May 2006, 23:05

Capturar Cierre de Formulario

Mensaje por gAb »

Buenas tardes

Me acaba de surgir una pequeña duda que nunca antes me había planteado, necesito controlar cuando el usuario cierra un formulario. Tengo que controlarlo porque cuando lo cierre, dependiendo de lo que haya hecho, actúo de una forma u otra. Si lo cierra pulsando aceptar, bien, se enlaza con el botón Aceptar - proceso Aceptar_Pre; cuando cierra pulsando Cancelar, o ESC, también, a través del botón Cancelar con el proceso Cancelar_Pre; pero ¿y si lo cierra pulsando en la X? o peor aún, con Ctrl+Alt+Supr ¿? bueno, en este último caso, debería funcionar el evento OnClose de la aplicación.(No lo he probado) Este último es muy extremo, puede obviarse, ya que si cierra de este modo es porque hay algún problema, y ya puestos, me da igual uno que dos. El caso es cuando cierra con "X". ¿Se puede controlar este?
Avatar de Usuario
weekend
vAdviser
vAdviser
Mensajes: 487
Registrado: 03 Nov 2007, 12:24

Mensaje por weekend »

A mi se me ocurre con una variable global booleana de persistencia en disco
Por ejemplo $MAL-CERRADO$
En el proceso al inicio del formulario las pones como verdadera $MAL-CERRADO$ = 1
Y cerrando el formulario de la forma correcta que la ponga a 0
Asi si cierran de mala manera en el siguiente arranque puedes comprobar esa variable y si esta a 1 es que han cerrado mal el formulario y hacer lo que creas conveniente
Saludos

El hardware es lo que puedes patear, y el software, lo que puedes maldecir.
weekend40@gmail.com
Avatar de Usuario
gAb
vAdviser
vAdviser
Mensajes: 311
Registrado: 28 May 2006, 23:05

Mensaje por gAb »

Pues si, me podría servir, uno de los puntos que tengo que controlar es un contador del cual tengo que sumar al abrir el formulario, y restar el sumado si finalmente no se da de alta la ficha. Con lo que, en el Pre_Open podría añadir las líneas para comprobar la variable y restar si hace falta. Es una chapuzilla, pero creo que servirá. (Lo suyo hubiera sido que esa acción estuviese controlada y capturar el cierre)

Gracias, voy a tomar nota...
Avatar de Usuario
weekend
vAdviser
vAdviser
Mensajes: 487
Registrado: 03 Nov 2007, 12:24

Mensaje por weekend »

Buenas
Si quieres evitar el problema puedes usar el formulario en cuadro de dialogo, asi no tienes la X de cerrar.
Si lo necesitas maximizar, Fran dejo un mapa con un ejemplo de un formulario en cuadro de dialogo maximizado
Saludos

El hardware es lo que puedes patear, y el software, lo que puedes maldecir.
weekend40@gmail.com
fvarona
vAdviser
vAdviser
Mensajes: 554
Registrado: 16 Nov 2005, 14:03

Mensaje por fvarona »

Hola.

Creo recordar que el comando "Pedir formulario" tiene una variable de respuesta, que indica si el usuario pulsó [Aceptar]. En cualquier otro caso (Cancelar, cerrar con la X, lo que sea) indicará el valor False.

Por si sirve...

Saludos,

Fran Varona
Avatar de Usuario
gAb
vAdviser
vAdviser
Mensajes: 311
Registrado: 28 May 2006, 23:05

Mensaje por gAb »

bien, es una buena opción, se trataría de lanzar todos los formularios a través de proceso para poder usar el comando, pero eso me plantea otro pequeño problema, ya no los podría lanzar directamente desde una rejilla...

cachissss...

¿o si? ¿se podría lanzar el proceso desde rejilla?
Avatar de Usuario
weekend
vAdviser
vAdviser
Mensajes: 487
Registrado: 03 Nov 2007, 12:24

Mensaje por weekend »

Buenas
Si pones en las propiedades de la rejilla, en evento de seleccion simple como proceso
el proceso que saque el formulario si es posible, lo que pasa es que seria con clic simple y no con doble clic
Saludos

El hardware es lo que puedes patear, y el software, lo que puedes maldecir.
weekend40@gmail.com
Avatar de Usuario
rafapetit
vCool
vCool
Mensajes: 208
Registrado: 07 Ago 2007, 23:24

Mensaje por rafapetit »

Tambien existe un proceso con Doble-Clik.
Despues con lo que comentas del tema que necesitas sumar si se acepta y restar si se cancela. Tendrias que pensar en las actualizaciones puede que te sirvan, dependiendo donde quieres que afecte claro. Pero miralo.
Un Saludo.

Rafa Petit (SGO - Ontinyent)
Avatar de Usuario
gAb
vAdviser
vAdviser
Mensajes: 311
Registrado: 28 May 2006, 23:05

Mensaje por gAb »

Bueno, por ahora va marchando hasta que le de una solución mejor ¿? ya miro con tiempo lo del doble cklick en la rejilla, que supongo que tendré que identificar en que celda se pulsó y lanzar el formulario correspondiente... digo ¿? no tengo ni idea, nunca lo he usado.
Responder