Hallo Viktorii,
für die Freigabe der Daten genügt es in deinem Fall, den Record in der Behandlungsroutine für das Ereignis
OnFreeNode zu finalisieren:
Delphi-Quellcode:
procedure TVirtualStringTreeBFInfo.AVSTFreeNode (
Sender : TBaseVirtualTree;
Node : PVirtualNode
);
var
Data : PTreeData;
begin
Data := Sender.GetNodeData(Node);
Finalize (Data^);
end;
Nur wenn der Record Zeiger auf Speicherbereiche enthält, die du manuell angefordert hast, musst du diesen Speicher vor dem Finalisieren auch manuell wieder freigeben.
Gruß Hawkeye