Einzelnen Beitrag anzeigen

bcvs

Registriert seit: 16. Jun 2011
668 Beiträge
 
Delphi 12 Athens
 
#8

AW: Auf verschiedene Instanzen eines Formulars zugreifen

  Alt 10. Jun 2013, 11:50
Und wenn ich meine Form speichern möchte, mache ich das dann so richtig?
(verwende jetzt TObjectList)
Im Prinzip ja. Du musst nur aufpassen, wann und von wem die Form wieder freigegeben wird. Die ObjectList gibt die enthaltenen Objekte standardmäßg selbst wieder frei (schau mal bei OwnsObjects). Wenn du in deinem TForm.Create noch ein self als Owner angibst, versucht dieser Owner evtl. die Form freizugeben, wenn sie bereits durch die ObjectList freigegeben wurde.

Ich würde daher sowas machen:

Delphi-Quellcode:
Form := TForm.Create(nil);
Form.label1.caption := 'test';
List.Add(Form);
...

List.Free // hier werden auch die Forms freigegeben.
Wenn ich dann schließlich die Liste mit einer Schleife durchgehe, wie kann ich dann wieder auf das Label zugreifen?
Delphi-Quellcode:
for i:=0 to List.count - 1 do
  TMyForm(List[i]).label1.Caption := 'Form '+IntToStr(i);

Geändert von bcvs (10. Jun 2013 um 11:53 Uhr)
  Mit Zitat antworten Zitat