I guess you would like the selection cleared?
Node := VST.GetFirstSelected;
if Node = nil then Node := VST.GetFirst
else
Node := VST.GetNext(Node);
if Assigned(Node) then begin // <- Check for nil here. ie: GetNext from last node returns nil.
VST.ClearSelection; // <- Clear selection here
VST.Selected[Node] := True;
VST.SetFocus;
Data := VST.GetNodeData(VST.GetFirstSelected);
Image1.Picture.LoadFromFile(Data^.PATH + Data^.FImage);
end;
Note: Personally, I'd make it cycle when reaching the end of nodes.