Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Code wird nicht ausgeführt - warum? (erledigt, danke an Popov) (https://www.delphipraxis.net/179611-code-wird-nicht-ausgefuehrt-warum-erledigt-danke-popov.html)

d7user1 19. Mär 2014 23:33

AW: Code wird nicht ausgeführt - warum? (erledigt, danke an Popov)
 
ne, ich habe OwnerDraw und OwnerData aber das von dir genannte nicht.

Popov 19. Mär 2014 23:42

AW: Code wird nicht ausgeführt - warum? (erledigt, danke an Popov)
 
Hast du in der Hilfe nach geguckt, oder nur unter Objektinspector?

Der Grund ist, modernere Delphiversionen haben bei etlichen Klassen den besagten OwnsObjects Schalter. Ist es da und ist es True gesetzt, gibt die Klasse das angehängte Objekt automatisch frei beim löschen eines Items. Man muss es also nicht selbst tun.

Ist es nicht da, muss man für das Löschen der Items eine eigene Routine schreiben.

d7user1 19. Mär 2014 23:52

AW: Code wird nicht ausgeführt - warum? (erledigt, danke an Popov)
 
ich habe im OI nachgeguckt. anscheinend gibt es den nicht bei ListView bzw. Delphi 2005 PE

Popov 19. Mär 2014 23:56

AW: Code wird nicht ausgeführt - warum? (erledigt, danke an Popov)
 
In dem Fall mußt du es selbst machen.

Oder du guckst in der OH nach.

d7user1 20. Mär 2014 00:04

AW: Code wird nicht ausgeführt - warum? (erledigt, danke an Popov)
 
ok ist erledigt:

Delphi-Quellcode:
procedure ListView1Deletion(Sender: TObject; Item: TListItem);
begin
 TObject(Item.Data).Free;
 Item.Data := nil;
end;

// ...

ListView1.Items.Clear; // löscht auch alle Data-Objekte (getestet)


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:38 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz