![]() |
Liberar formularios
hola gente tengo un problema.
tengo una aplicacion que crea en tiempo de ejecucion todos los forms menos el principal. ahora, cuando el usuario cierra la sesion, de esta aplicacion, quiero liberar la todos los forms y además asignarles nil. hasta ahora probe lo siguiente sin exito. Código:
tot := Application.ComponentCount -1;como puedo resolver este problema? gracias de antemando por su ayuda. |
Es que la variable que estas apuntando a Nil, es la variable faux, si el formulario en tiempo de ejecución fue asignado a otra variable, la otra va a seguir manteniendo el valor anterior.
Saludos! |
hola delphi.com.ar lo que dices es correcto, pero como puedo asignarle nil si no puedo hacer
(Application.Components[i] as tform) := nil ni Application.Components[i] := nil gracias. |
El tema es que vas a tener que asignarle nil indistintamente a todas las variables, si los formularios no tienen múltiples instancias, puedes asignarle Nil a la variable en el OnDestroy de los mismos.
Saludos! |
la verdad no queria llegar a esa instancia ya que son muchos formularios .. queria ver si podia hacerlo con una rutina generica ... pero si no surge nada tendre que hacer como tu bien dices en el ultimo mensaje.
saludos |
Sinceramente, en la mayoría de mis "proyectos" no uso ninguna variable para acceder a los formularios, mas que la de los DataModules, y la del formulario principal (MDI). Como no tengo necesidad de comunicarme con los formularios individualmente una vez creado, directamente borro la variable, y los creo simplemente:
Código:
TMiFromulario.Create(Self); |
| La franja horaria es GMT +2. Ahora son las 00:24:11. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi