![]() |
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. |
mira si el componente tiene un free oa algo.
Si lo tiene en el onclose del form pon componente.free; |
Cita:
Venga, un saludo. |
Tendrías que sobreescribir el destructor del archivo, y desde ahí si la pantalla esta abierta, cerrarla y liberarla.
Código:
TMiComponente = class(TComponent) |
Cita:
|
Cita:
Muchas gracias. |
¿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! |
Cita:
Bueno, muchísimas gracias por tu ayuda. Un saludo. |
La franja horaria es GMT +2. Ahora son las 13:07:55. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi