Zitat von
Mussi0:
Delphi-Quellcode:
//der ObjectList hinzufügen
objField.Add(objCell);
//objCell zerstören
objCell.Destroy;
Das Destroy darfst du hier nicht aufrufen. Du erzeugst das Objekt, Füllst es mit werten, fügst es der Objectlist zu und dann zerstörst du es.
Mit
objField.Add(objCell); fügst du nur den Pointer/Zeiger des Objektes der Liste zu. es wird keine Kopie angelegt. Wenn du das Objekt aber zerstörst, dann zeigt der Pointer, den du übergeben hast in's leere.
Also solltest du den Destroy weglassen.
Damit du aber keinen Speicherleck bekommst, musst du dafür sorgen, daß die erzeugen Objekte zum "richtigen" Zeitpunkt freigiebst. Das kann dir aber auch die ObjectList abnehmen. Einfach OwnsObjects der Objectlist auf True setzen.
Gerd