FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Liberar memoria al cerrar un child.
Tengo una preguntilla... se libera la memoria automaticamente al cerrar una ventana hija usando "FormCloseQuery(Sender: TObject; var CanClose: Boolean)" cuando defino CanClose:=True?
Lo digo porque he usado "FormClose(Sender: TObject; var Action: TCloseAction);" y he comprobado que al usar "Action:=CaFree" se libera la memoria del MDI Child, pero no estoy seguro si el close query la libera porque simplemente usa "canclose" pero no usa la variable "cafree". |
#2
|
||||
|
||||
Cita:
__________________
:) |
#3
|
||||
|
||||
Creo que no tenes muy claro cual es la secuencia para cerrar un form.
El evento OnCloseQuery se dispara, y si al terminar la Variable CanClose vale true, se procede a "cerrar" el formulario. Cerrar, significa intentar hacer invisible el formulario (lo cual no es posible con MDIChild), pero no liberará ninguna memoria. Al momento de cerrar el formulario, se dispara el Evento OnClose. Si el parámetro Action es cambiado a caFree, entonces si se destruye el formulario al momento de cerrarlo, lo que conlleva la liberación de memoria ocupada por el formulario y todos los demás objetos para los que éste sea el propietario. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
|
|