Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi erstellte Form in TList freigeben (https://www.delphipraxis.net/130760-erstellte-form-tlist-freigeben.html)

_frank_ 12. Mär 2009 21:42

Re: erstellte Form in TList freigeben
 
das sollte eigentlich den ganzen speicher wieder freigeben, kanns grade nicht testen, da ich hier nur d3 installiert habe und da fastmm nicht funzt. mit den record-bastelleien baut man sich ganz schnell Speicherlecks rein. hab auch schon mit sowas viel Zeit verbracht, daher mein Rat...lass das mit den records ;)

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var formx:TForm1;
    i:integer;
begin
  list:=TList.create;
  for i:=0 to 9 do
  begin
    formx:=TForm1.createNew(nil);
    list.Add(formx);
  end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var i:integer;
    formx:TForm1;
begin
  for i:=list.count-1 downto 0 do
  begin
    formx:=TForm1(list.items[i]);
    formx.free;
  end;
  list.free;
end;

procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
  for i:=0 to list.count-1 do
    TForm1(list.items[i]).show;
end;
HTH Frank

Looper 12. Mär 2009 21:46

Re: erstellte Form in TList freigeben
 
Danke! So werde ich das dann auch einbauen. Weil meine jetzige Lösung ist irgendwie viel zu unflexibel.
Ein statische Array [0..2] von Formularen :-D

Janek


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:35 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz