FoxPro/Visual FoxPro - Cerrar un formulario cuando tiene un menú

 
Vista:
sin imagen de perfil

Cerrar un formulario cuando tiene un menú

Publicado por Brandon (2 intervenciones) el 14/09/2016 01:35:00
Hola, Buen dia quisiera saber como cierro un formulario que tiene un menú, pues al ingresar a el otro formulario desde el menú no lo cierra, y al regresar me abre otra pestaña con el formulario que tiene el menú.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Cerrar un formulario cuando tiene un menú

Publicado por Fidel José (657 intervenciones) el 14/09/2016 16:44:43
No alcanzo a entender. Cualquier formulario se cierra desde la cruz de cierre, o desde el mismo formulario con thisform.release
Si tratas de cerrar un formulario desde otro formulario (o desde una clase, o un prg) tendrás que tener la referencia de objeto. Y en ese caso depende de si el formulario se instanció con DO FORM o con newobjec() o createObject().
Si no mal interpreto, también es posible que para volver al form principal (si tiene un menú es un ShowWindow=2) estés llamando, desde el secundario, a ese formulario nuevamente con DO FORM, cosa totalmente incorrecta.
Pero no sé si es lo que preguntas. A qué le llamas "pestaña"?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Cerrar un formulario cuando tiene un menú

Publicado por Brandon (2 intervenciones) el 15/09/2016 16:31:18
pesta
Hola bien dia, a esto le llamo pestaña y pues necesito que cuando entre a otro formulario desde el formulario del menu se cierre este para asi cuando me quiera devolver desde el formulario al que ingrese le hago el llamado con do form y ya intente con thisform.release y el formulario menu esta en ShowWindow=2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Cerrar un formulario cuando tiene un menú

Publicado por Fidel José (657 intervenciones) el 16/09/2016 00:54:06
Es que no tienes que volver a llamar al formulario del menu. Supuestamente es el formulario principal de la aplicación y solamente debe ser llamado por el main.prg.
Los otros formularios que usas, para poder visualizarse dentro del menú, deben ser ShowWindow = 1 (In Top Level Form).
Si los dejas en ShowWindow = 0, no podrás verlos mientras el _screen esté oculto.
Para mayor precisión, todos los formularios que no son ShowWindow = 2, deben ser ShowWindow=1. Si no los llamas desde un form ShowWindow=2, asumirán automáticamente el valor cero para esa propiedad.

1) Como el form principal ShowWindow = 2 se llama desde un prg, te conviene crear una variable pública (que puede ser una propiedad de screen) y asignarle un nombre con la clásula Name.
PUBLIC goFrmPpal
DO FORM MyFrmPPal NAME goFrmPpal
De esta forma, si necesitas referite a ese formulario desde otro punto de la aplicación, la referencia será goFrmPpal
Por ejemplo:
lnBackColor = goFrmPpal.BackColor

2) Tratándose de un form principal, en el evento Unload deberías tener un QUIT, para que la aplicación termine cuando liberas el formulario. Con esto ves que el formulario principal debe estar siempre.
Normalmente creas un PROCEDURE dentro del main.prg que haga las operaciones que necesitas para un cierre prolijo.
Suponte que tienes un PROCEDURE Cerrar_app

* En el main.prg
ON SHUTDOWN DO Cerrar_app
PUBLIC goFrmPpal
DO FORM MyFrmPPal NAME goFrmPpal
READ EVENTS

PROCEDURE cerrar_app
CLEAR EVENTS
CLOSE DATABASES ALL && si aplica
* etc
QUIT
ENDPROC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar