Warum so kompliziert?
Bei allen wichtigen Eventhandlern des VST hast du doch eine Referenz auf den Node.
Die Objektliste machste du nur aus Speicherfreigabegründen.
Delphi-Quellcode:
procedure TForm2.VirtualStringTree1GetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex;
TextType: TVSTTextType; var CellText: string);
var
UserData: TUserData;
begin
if Assigned(Node) then
begin
UserData := Node.GetData<TUserData>;
if Assigned(UserData) then
begin
case Column of
0:
CellText := UserData.FirstName;
1:
CellText := UserData.LastName;
2:
CellText := UserData.Address;
end;
end;
end;
end;