FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#1
|
|||
|
|||
Liberar componente.
Hola a todos. Tengo un componente para realizar búsquedas sobre una tabla, que es visual. Lo arrastro a un Form, y ejecuto la aplicación. Abro ese form, ejecuto la búsqueda y si cierro el form, la pantalla de búsqueda que se crea se mantiene abierta todavía. Pensaba que al arrastrar el componente, el owner pasaba a ser el form al que lo arrastro, ¿es esto asi? Se que el owner se especifica en el Create, pero al ser visual, lo crea el form. Creo que hay algo que se me escapa...
Muchas gracias de antemano.
__________________
Setry2 Eres un bit? www.lafesta.com |
#2
|
|||
|
|||
mira si el componente tiene un free oa algo.
Si lo tiene en el onclose del form pon componente.free; Última edición por Descendents fecha: 19-11-2003 a las 13:01:49. |
#3
|
|||
|
|||
Cita:
Venga, un saludo.
__________________
Setry2 Eres un bit? www.lafesta.com |
#4
|
||||
|
||||
Tendrías que sobreescribir el destructor del archivo, y desde ahí si la pantalla esta abierta, cerrarla y liberarla.
Código:
TMiComponente = class(TComponent) private FDialog: TFrmDialog; public destructor Destroy; override; end; ... implementation destructor TMiComponente.Destroy; begin if Assigned(FDialog) Then FDialog.Free; inherited; end;
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#5
|
||||
|
||||
Cita:
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#6
|
|||
|
|||
Cita:
Muchas gracias.
__________________
Setry2 Eres un bit? www.lafesta.com |
#7
|
||||
|
||||
¿Has leído mi mensaje anterior?...
Tu componente tiene como owner el form que lo contiene, cuando este form se libere va a liberar tu componente, en mi mensaje anterior puedes ver como aprovecho de la "notificación" de liberación para liberar el formulario de búsqueda. De todos modos si el Owner del formulario de búsqueda es el componente, este se encargará de liberar el formulario cuando se libere este componente, por lo tanto se cerrará. Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. Última edición por delphi.com.ar fecha: 19-11-2003 a las 15:40:36. |
#8
|
|||
|
|||
Cita:
Bueno, muchísimas gracias por tu ayuda. Un saludo.
__________________
Setry2 Eres un bit? www.lafesta.com |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|