Delphi - como liberar memoria creando y destruyendo compone

 
Vista:

como liberar memoria creando y destruyendo compone

Publicado por Jonathan (15 intervenciones) el 12/04/2001 23:35:46
Hola colegas, quiero destuir un componente para liberar memoria y luego crearlo. Se destruirlo "Destroy" pero el "create" me da error
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:como liberar memoria creando y destruyendo comp

Publicado por Gerardo Ch. (10 intervenciones) el 13/04/2001 03:49:13
Hola Jonathan:

¿De qué componente se trata?

G.
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:como liberar memoria creando y destruyendo comp

Publicado por Jonathan (15 intervenciones) el 13/04/2001 11:58:35
de un Ttimer
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:como liberar memoria creando y destruyendo comp

Publicado por qdevelop2000 (26 intervenciones) el 15/04/2001 20:06:51
Estimado amigo:

Lo primero que tienes que pensar es que si el TTimer lo tienes pegado al form, será creado automáticamente y tú no puedes destruirlo ya que intentará hacerlo él al destruir el form (por eso el error).
Si quieres hacer lo que dices prueba a crearlo dinámicamente, es decir, en el OnCreate del form crea tu mismo el Timer:

procedure TForm1.FormCreate(Sender: TObject);
begin
MiTimer := TTimerCreate(Self);
MiTimer.Enabled := False;
MiTimer.Interval := 1000;
MiTimer.OnTimer := MiTimerTimer;
end;

y en el OnDestroy del form destrúyelo:

procedure TForm1.FormDestroy(Sender: TObject);
begin
MiTimer.Free;
end;

Eso sí acuérdate de añadir:
MiTimer : TTimer;
en las <private declarations> de form.

Tambien añade:

procedure TForm.MiTimerTimer(Sender: TObject);
begin
<...tu código...>
end;

cuyo
procedure TForm.MiTimerTimer(Sender: TObject);
debes añadir, también a mano, en las
<private declarations>

Dudas: emailme.
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