Page 2 sur 3
OnFreeNode doit être implémenté pour libérer la mémoire
Quand on utilise un virtual treeview on devrait avoir un gestionnaire d'événement pour OnFreeNode chargé de libérer les ressources associées au record de chacun des noeuds. Le code le plus simple est le suivant :
procedure TMyForm.vstMyTreeFreeNode(Sender: TBaseVirtualTree; Node: PVirtualNode);
var
Data : PMyRecord;
begin
Data := Sender.GetNodeData(Node);
Finalize(Data^);
end;
C'est la meilleure façon de procéder puisqu'on laisse faire la méthode prévue par Delphi pour libérer les ressources utilisées par un record.