Delphi - FORMULARIO EN MEMORIA

 
Vista:

FORMULARIO EN MEMORIA

Publicado por DAVID (20 intervenciones) el 09/05/2001 12:39:08
¿Como puedo detectar que tengo creado en memoria un formulario?
¿Y un Data Modulo?. Esto me interesa porque aveces tengo creado el
mismo formulario 2 Veces o mas, con lo que estoy gastando recursos
tontamente.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:FORMULARIO EN MEMORIA

Publicado por Fer (117 intervenciones) el 09/05/2001 12:47:35
Si lo que te interesa es crear una sóla instancia de un determinado tipo de form, puedes hacer lo siguiente:

for i:=0 to Screen.FormCount - 1 do begin

if Screen.Forms[i] is TFormQueSoloQuieroCrearUnaVez then
Screen.Forms[i].Show
else begin
FormUnico := TFormQueSoloQuieroCrearUnaVez.Create(Self);
FormUnico.Show;
end;{else}

end;{for}

Tienes que perdonar si hay algún error. Tengo una aplicación en la que uso esta técnica pero no tengo aquí los fuentes y he escrito
el código de memoria, espero que esté bien.

También se puede hacer con métodos de clase, de manera que es la propia clase del Form la que, en caso de ya tener instancias
hace que se muestre el Form creado, pero no se como se hace, sólo me han explicado la teoría.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FORMULARIO EN MEMORIA Post Data

Publicado por Fer (117 intervenciones) el 09/05/2001 12:49:52
Se me olvidaba... para los DataModules tienes las propiedades del objeto Screen DataModuleCount y DataModules.

Otro saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar