Uffa,
also dass der Button die Objektliste nicht kennt und er sich nicht direkt selbst löschen kann erscheint mir einleuchtend.
Allerdings verstehe ich nicht so ganz, wie ich das "free" außerhalb platzieren soll. Reicht es denn, wenn ich z.b. TButton ableite und im Destructor den Button aus der Objektliste entferne? So z.b.:
Code:
destructor TMyButton.Destroy;
begin
objektliste.DeleteItem(index);
inherited;
end;
Denn eigentlich weiß der Button doch immer noch nicht, dass die Objektliste existiert...