Hi mimi!
Ich sehe da mindestens 2 Möglichkeiten.
1. Du leitest dir von TListItem eine Klasse ab, die deine zusätzlichen Wünsche befriedigt.
Delphi-Quellcode:
type
TaMimiListItem = class(TListItem)
private
FLongPath : String;
published
property LongPath : String read FLongPath write FLongPath;
end;
Diese Methode hat den Vorteil, das sie später recht einfach nutzbar ist, du bei der Zuweisung kontrollieren kannst, obs den Pfad überhaupt gibt(...) und dieses Vorgehen
OOP-konform ist.
2. Du nutzt die "Data"-Eigenschaft der TListItem-Klasse. Das läuft dann so wie beim VST.
Delphi-Quellcode:
type
TListItemData = record
LongPath : String;
//usw. Wenns nur ein Datenfeld ist, muss es kein Record sein
end;
PListItemData = ^TListItemData;
//...
//Neuer Listitem
var
Li : TListItem;
Data : PListItemData;
begin
Li:=ListView1.Items.Add;
New(Data);
Li.Data:=Data;
Data.LongPath:='c:\foo\bar.c';
end;
Hier musst du nun dran denken, das OnDeletion-Ereignis des Listviews zu bedienen um die Daten wieder freizugeben.