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);