In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

show o showmodal

Foro de Xailer profesional en español
Responder
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

show o showmodal

Mensaje por Francisco Sanchez »

Vamos a ver quisiera abrir los formularios de los apartados, que no los de
edicion de datos, que no fuesen modales, y controlar si han cerrado este
formulario bien pulsando sobre el boton de cierre - x arriba a la derecha
en la barra de titulo - o bien pulsando sobre la opcion correspondiente del
menu o sobre el toolbutton correspondiente, pero esto con showmodal es facil
= nOpcion := ShowModal() pero con Show() es igual ?
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL -
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

show o showmodal

Mensaje por jfgimenez »

Paco,
> Vamos a ver quisiera abrir los formularios de los apartados, que no los de
> edicion de datos, que no fuesen modales, y controlar si han cerrado este
> formulario bien pulsando sobre el boton de cierre - x arriba a la derecha
> en la barra de titulo - o bien pulsando sobre la opcion correspondiente
> del menu o sobre el toolbutton correspondiente, pero esto con showmodal es
> facil = nOpcion := ShowModal() pero con Show() es igual ?
Lo normal sería que controles cada una de las posibilidades de cerrar el
formulario. P.ej. supongamos que puedes cerrarlo con un botón de "Cerrar",
con un botón con imagen de una puerta en la toolbar, y con la X de la barra
de título. En ese caso, podrías poner en el código del botón "Cerrar" y en
el del botón de la toolbar algo que te identifique que se han pulsado, y en
el evento OnClose puedes comprobar ese valor. Vamos a concretar el ejemplo:
En la declaración de la case:
...
DATA nSalir INIT 0
...
Los eventos de los botones:
::oButton1:OnClick := {|| ::nSalir := 1, ::Close() }
::oToolbar1:aButtons[10]:OnClick := {|| ::nSalir := 2, ::Close() }
Y en el evento OnClose del formulario:
METHOD FormClose( oSender, lClose ) CLASS TForm1
IF ::nSalir == 1
// Han pulsado el botón "Cerrar"
ELSEIF ::nSalir == 2
// Han pulsado el botón de la toolbar
ELSE
// Han pulsado la X o Alt + F4
ENDIF
RETURN Nil
--
Un saludo,
José F. Giménez
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Responder