Página 1 de 1

cerrar formulario principal

Publicado: Jue Mar 31, 2005 9:23 pm
por Francisco Sanchez
Vamos a ver en el evento onclose llamo a un metodo que me comprueba si hay
algun formulario, ademas del principal, abierto. Muestro un msgyesno para
saber si quiere abandonar la aplicacion. En caso afirmativo cierra todos los
formularios y demas. Pero en caso negativo, tambien me abandona la
aplicacion y no se como controlar esto. De momento lo que hago es volver a
hacer :New() y :Show() del formulario principal, pero claro asi me deja el
formulario principal pero no los formularios hijos que los cierra. Se que lo
estoy haciendo mal, como tendria que hacerlo ?
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL

cerrar formulario principal

Publicado: Jue Mar 31, 2005 10:28 pm
por jlalin
Francisco,
recuerda que el formato de OnClose es: EVENT OnClose( oSender, @lClose )
¿ Estás poniendo lClose a TRUE o FALSE desde el evento ?
Saludos,
José Lalí­n

cerrar formulario principal

Publicado: Jue Mar 31, 2005 10:36 pm
por Francisco Sanchez
pues ahi lo estare haciendo mal pues estoy haciendo :
WITH OBJECT ::oFormPrincipal := TMiFormulario ():New()
:OnClose := { || MiMetodo() }
:Show()
END
......
METHOD MiMetodo() CLASS .....
If MsgYesno( .... )
Application:Terminate()
......
Else
.... aqui esta el problema que ya ponga lo que ponga aqui me abandona la
aplicacion. Esto es lo que hago mal a parte de que no paso ningun parametro
Endif
RETURN NIL
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL

cerrar formulario principal

Publicado: Jue Mar 31, 2005 10:38 pm
por jlalin
Francisco,
prueba declarando el evento así­:
:OnClose := { |oSender| MiMetodo( oSender, @lClose ) }
Y el método así­:
METHOD MiMetodo( oSender, lClose ) CLASS .....
lClose := MsgYesno( .... )
RETURN Nil
Saludos,
José Lalí­n

cerrar formulario principal

Publicado: Jue Mar 31, 2005 10:39 pm
por Francisco Sanchez
YA ESTA ya lo solucione devolviendo .t. o .f. en funcion de si se cierra el
formulario o no, uff que obvio, estoy algo espeso hoy. LLevo ya muchas
horas trabajando. Disculpad mi torpeza.
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL