Página 1 de 1

Cierre de un formulario

Publicado: Vie Nov 25, 2005 9:57 am
por Emilio Gil
Como puedo saber si un formulario ha sido cerrado pulsando con el raton
sobre el boton en aspa [X] del titulo del formulario.
Saludos y Gracias.
Emilio Gil.

Cierre de un formulario

Publicado: Vie Nov 25, 2005 10:01 am
por joseluis
Emilio,
Si haces, por ejemplo,
oForm := tForm1():New()
oForm:ShowModal()
entonces
oForm:nModalResult contiene un valor de como se cerró la ventana. Creo
que si ::nModalResult == 2 entonces es que se cerró con el aspa.
Saludos,
José Luis Capel
Emilio Gil escribió:
> Como puedo saber si un formulario ha sido cerrado pulsando con el raton
> sobre el boton en aspa [X] del titulo del formulario.
>
> Saludos y Gracias.
> Emilio Gil.

Cierre de un formulario

Publicado: Vie Nov 25, 2005 10:04 am
por jfgimenez
Emilio,
> Como puedo saber si un formulario ha sido cerrado pulsando con el raton
> sobre el boton en aspa [X] del titulo del formulario.
Un formulario se puede cerrar de 3 formas: pulsando la [X], pulsando algún
botón de Aceptar, Cancelar,... o por código llamando al método Close().
Si en el formulario tienes botones de aceptar, cancelar, etc., puedes poner
en su propiedad nModalResult el valor que quieras que retorne el formulario.
De esta forma, el método ShowModal() devolverá mrOK, mrCANCEL, etc.. En el
caso de que el usuario pulse la tecla Esc produce exactamente el mismo
resultado que si pulsara el botón de cancelar.
En el caso de que el usuario cierre el formulario con la [X], el valor de
retorno siempre será mrNONE.
Si cierras el formulario por código llamando a Close(), puedes establecer el
valor de nModalResult previamente, y así puedes distinguir cómo se ha
cerrado.
--
Un saludo,
José F. Giménez