Hier sind die Strukturen:
Delphi-Quellcode:
type
TAuto = Class(TObject)
Modell, Hersteller : String;
end;
TAutos = Class(TObjectList)
private
function getItem(Index: Cardinal): TAuto; virtual;
procedure setItem(Index: Cardinal; Auto: TAuto); virtual;
public
property Items[index: Cardinal]: TAuto read getItem write setItem;
default;
end;
Und hier wird ein Auto der TreeView hinzugefügt (carSammlung ist als private deklariert und ein TreeNode mit dem Caption "AutoSammlung" ist bereits vorhanden:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var newCar : TAuto;
begin
// Auto 1
newCar := TAuto.Create;
newCar.Hersteller := 'VW';
newCar.Modell := 'Golf';
carSammlung.Add(newCar);
// Auto 2
newCar := TAuto.Create;
newCar.Hersteller := 'Opel';
newCar.Modell := 'Astra';
carSammlung.Add(newCar);
TreeView1.Items.AddChildObject(TreeView1.Items[0], 'Auto1', carSammlung);
TreeView1.Items.AddChildObject(TreeView1.Items[0], 'Auto2', nil);
TreeView1.Items.AddChildObject(TreeView1.Items[0], 'Auto3', nil);
end;
Wie weise ich nun z.B. dem Eintrag von "Auto3" das Auto2 (den Opel) zu?