Einzelnen Beitrag anzeigen

Sereby

Registriert seit: 31. Mär 2008
91 Beiträge
 
#1

TCheckListbox Auto-Destroy Objects

  Alt 22. Jun 2009, 10:48
Hiho,

Verwende: Delphi 2009

ich habe bei meiner TCheckListBox per AddItem auch ein RecordObject hinzugefügt.
Dieses enthält 2 String Variablen!

Und nun versuche ich, leider vergeblich bisher, diese Objekte bei destroy freizugeben mit folgendem Code

Code:
  TCheckListBox = class(CheckLst.TCheckListBox)
  public
    destructor Destroy; override;
  end;

destructor TCheckListBox.Destroy;
var
  I: Integer;
  O: TObject;
begin
  for I := 0 to Items.Count - 1 do
  begin
    O := Items.Objects[I];
    if Assigned(O) then FreeAndNil(O);
  end;

  inherited Destroy;
end;
das problem an dem Code ist, dass er bei Items.Count schon eine Exception wirft die folgendes besagt:
"Element ... hat kein übergeordnetes Fenster"

so.. nun bitte ich euch mir zu helfen und zu sagen, wie ich es erreiche dass er automatisch bei Destroy die hinzugefügten Objekte aus dem Speicher entfernt?!

MfG Sereby
  Mit Zitat antworten Zitat