Hallo delphinia,
du mußt dem ListItem ein SubItem zuordnen und dem SubItem mit
AListitem.SubItems.AddObject(AName,AIcon);
ein Objekt geben.
Also nochmal etwas genauer:
Delphi-Quellcode:
// ListviewItem erstellen
AListItem := AListView.Items.Add;
// Objekt in SubItem speichern
AListItem.SubItems.AddObject(AIcon.Name,AIcon);
anschließend kann man sich das Objekt wieder laden:
Delphi-Quellcode:
AListItem := AListView.Selected;
AIcon := TIcon(AListItem.SubItems.Objects[AListItem.SubItems.IndexOf(AName)]);
Ich hoffe dir damit ein wenig geholfen zu haben.
Ansonsten könnte man TListView ableiten und eine StringListe hinzufügen:
Delphi-Quellcode:
TListViewEx = class(TListView)
private
FIconList: TStringList;
public
property IconList : TStringList read FIconList write FIconList;
end;
und dann jedesmal beim Erstellen eines ListItems ein Icon-Objekt der StringListe geben. Die StringListe darf aber nicht sortiert sein, da sonst der Bezug zur Listview verloren geht.
MfG
Woto