Desaparecen los objetos
Publicado por Miguel (10 intervenciones) el 18/07/2007 11:48:40
Hola a todos!
En mi proyecto, utilizo un menú para gestionar todas las ventanas que se están ejecutando en Windows. Para esto creo un formulario en el screen y dentro creo un botón por cada ventana abierta en windows. Los creo como objetos, el contenedor es un formulario (con la propiedad always on top" y el botón es un contenedor.
El problema es que después de crear los botones y al terminar el proceso, se elimina el formulario y junto con ello, los botones. Ya he comprobado, que el problema no sea, que no esta visible, no es el caso, los objetos se eliminan.
Lo extraño es, que justo antes del endproc, tengo un messagebox y en ese punto si están los botones y después de ese endproc no hay ningún código mas.
cual puede ser el motivo?
procedure crear1
lparameters ncont
private tituloX, distancia
PUBLIC titulo,titulo2
SET CLASSLIB TO "botonesllamada.vcx"
contenedor=CREATEOBJECT("contenedor3") && es un formulario normal
contenedor.width=(ncont)*177
contenedor.left=203
contenedor.top=(_screen.Height)-32
contenedor.show
distancia=0
IF !USED('f_ccx')
USE &cArchivo ALIAS f_ccx IN 0 ORDER codigo
ENDIF
SELECT f_ccx
Go TOP
Do While !Eof()
IF ALLTRIM(UPPER(f_ccx.Titulo))="JMENU"
else
tituloX=("bot"+ ALLTRIM(STR(ncont)))
contenedor.AddObject("titulo","botonesllamada")
contenedor.titulo.left=distancia
contenedor.titulo.Nombre.caption=f_ccx.titulo
contenedor.titulo.direccion=f_ccx.handle
contenedor.titulo.visible=.T.
contenedor.titulo.cerrar.tag=tituloX
contenedor.titulo.imagennd.tag=tituloX
contenedor.titulo.Nombre.tag=tituloX
contenedor.titulo.name=tituloX
ncont=ncont-1
distancia=distancia+177
endif
skip
ENDDO
SELECT f_ccx
USE
messagebox("comprobar") && aquí todavía están los botones y el formulario
endproc
En mi proyecto, utilizo un menú para gestionar todas las ventanas que se están ejecutando en Windows. Para esto creo un formulario en el screen y dentro creo un botón por cada ventana abierta en windows. Los creo como objetos, el contenedor es un formulario (con la propiedad always on top" y el botón es un contenedor.
El problema es que después de crear los botones y al terminar el proceso, se elimina el formulario y junto con ello, los botones. Ya he comprobado, que el problema no sea, que no esta visible, no es el caso, los objetos se eliminan.
Lo extraño es, que justo antes del endproc, tengo un messagebox y en ese punto si están los botones y después de ese endproc no hay ningún código mas.
cual puede ser el motivo?
procedure crear1
lparameters ncont
private tituloX, distancia
PUBLIC titulo,titulo2
SET CLASSLIB TO "botonesllamada.vcx"
contenedor=CREATEOBJECT("contenedor3") && es un formulario normal
contenedor.width=(ncont)*177
contenedor.left=203
contenedor.top=(_screen.Height)-32
contenedor.show
distancia=0
IF !USED('f_ccx')
USE &cArchivo ALIAS f_ccx IN 0 ORDER codigo
ENDIF
SELECT f_ccx
Go TOP
Do While !Eof()
IF ALLTRIM(UPPER(f_ccx.Titulo))="JMENU"
else
tituloX=("bot"+ ALLTRIM(STR(ncont)))
contenedor.AddObject("titulo","botonesllamada")
contenedor.titulo.left=distancia
contenedor.titulo.Nombre.caption=f_ccx.titulo
contenedor.titulo.direccion=f_ccx.handle
contenedor.titulo.visible=.T.
contenedor.titulo.cerrar.tag=tituloX
contenedor.titulo.imagennd.tag=tituloX
contenedor.titulo.Nombre.tag=tituloX
contenedor.titulo.name=tituloX
ncont=ncont-1
distancia=distancia+177
endif
skip
ENDDO
SELECT f_ccx
USE
messagebox("comprobar") && aquí todavía están los botones y el formulario
endproc
Valora esta pregunta


0