Zitat von
OG Karotte:
Hallo Richard,
die eine Möglichkeit wäre IterateSubtree
Delphi-Quellcode:
Procedure TForm1.MyCallBack(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean);
Begin
If Data.xyz = abc Then Sender.IsVisible[Node] := false;
End;
Procedure TForm1.ButtonClick(Sender: TObject);
Begin
VST.IterateSubTree(nil, MyCallBack, nil);
End;
diese Lösung ist sehr schön, hat aber einen kleinen Nachteil.
In Data sind nicht die Knotendaten gespeichert.
Die Knotendaten müssen nach wie vor mit getNodeData geholt werden.
In Data steht ein Zeiger welcher zusätzlich von IterateSubtree mitgegeben werden kann.
Dieses habe ich auch im Stammtischvideo erklärt.
http://www.delphipraxis.net/videos#Stammtisch_2
Im Entwickler Magazin 02/08 Seite 68 ff. ist es auch drin.
[edit]
quotetag korrigiert