problemas con on shutdown y formas
Publicado por ramon (47 intervenciones) el 01/04/2006 06:16:40
estoy probando con el siguiente programa
LOCAL loform
PUSH MENU _MSYSMENU
SET SYSMENU TO
loform=CREATEOBJECT('form2')
loform.CAPTION='forma1'
loform.SHOW
ON SHUTDOWN fvsalida()
READ EVENTS
loform=NULL
ON SHUTDOWN
POP MENU _MSYSMENU
PROCEDURE fvsalida
DO WHILE TYPE('_screen.activeform')='O' AND !ISNULL(_SCREEN.ACTIVEFORM)
WAIT WINDOW _SCREEN.ACTIVEFORM.CAPTION
_SCREEN.ACTIVEFORM.RELEASE
doevents
ENDDO
CLEAR EVENTS
DEFINE CLASS form1 AS FORM
AUTOCENTER=.T.
ALWAYSONTOP=.T.
ADD OBJECT btn_newform AS COMMANDBUTTON WITH ;
TOP=50,;
LEFT=50
PROCEDURE btn_newform.CLICK
LOCAL loform
loform=CREATEOBJECT('form1')
WITH loform
.CAPTION=THISFORM.CAPTION+'-1'
.WIDTH=THISFORM.WIDTH-20
.HEIGHT=THISFORM.HEIGHT-20
ENDWITH
loform.SHOW(1)
ENDDEFINE
DEFINE CLASS form2 AS form1
ADD OBJECT btn_salida AS COMMANDBUTTON WITH ;
TOP=100,;
LEFT=50
PROCEDURE QUERYUNLOAD
CLEAR EVENTS
PROCEDURE btn_salida.CLICK
CLEAR EVENTS
ENDDEFINE
si lo ejecuto e inmediatamente hago click en el boton cerrar del la ventana principal de fox
el programa termina normal pero si tengo mas de una forma desplegada solo se libera la ultima forma desplegada y luego se cicla en el procedumiento fvsalida porque no libera las siguientes formas, alguien sabe porque y como solucionar esto?
les agradesco de antemano su ayuda
LOCAL loform
PUSH MENU _MSYSMENU
SET SYSMENU TO
loform=CREATEOBJECT('form2')
loform.CAPTION='forma1'
loform.SHOW
ON SHUTDOWN fvsalida()
READ EVENTS
loform=NULL
ON SHUTDOWN
POP MENU _MSYSMENU
PROCEDURE fvsalida
DO WHILE TYPE('_screen.activeform')='O' AND !ISNULL(_SCREEN.ACTIVEFORM)
WAIT WINDOW _SCREEN.ACTIVEFORM.CAPTION
_SCREEN.ACTIVEFORM.RELEASE
doevents
ENDDO
CLEAR EVENTS
DEFINE CLASS form1 AS FORM
AUTOCENTER=.T.
ALWAYSONTOP=.T.
ADD OBJECT btn_newform AS COMMANDBUTTON WITH ;
TOP=50,;
LEFT=50
PROCEDURE btn_newform.CLICK
LOCAL loform
loform=CREATEOBJECT('form1')
WITH loform
.CAPTION=THISFORM.CAPTION+'-1'
.WIDTH=THISFORM.WIDTH-20
.HEIGHT=THISFORM.HEIGHT-20
ENDWITH
loform.SHOW(1)
ENDDEFINE
DEFINE CLASS form2 AS form1
ADD OBJECT btn_salida AS COMMANDBUTTON WITH ;
TOP=100,;
LEFT=50
PROCEDURE QUERYUNLOAD
CLEAR EVENTS
PROCEDURE btn_salida.CLICK
CLEAR EVENTS
ENDDEFINE
si lo ejecuto e inmediatamente hago click en el boton cerrar del la ventana principal de fox
el programa termina normal pero si tengo mas de una forma desplegada solo se libera la ultima forma desplegada y luego se cicla en el procedumiento fvsalida porque no libera las siguientes formas, alguien sabe porque y como solucionar esto?
les agradesco de antemano su ayuda
Valora esta pregunta


0