Hallo Nils,
du mußt entweder das Flag
toAutoSort in der Eigenschaft
TreeOptions.AutoOptions des Baums setzen oder - wie DeddyH geschrieben hat - das Sortieren manuell durch einen Aufruf der Methode Sort bzw. SortTree auslösen.
Auf die booleschen Variablen kannst du übrigens verzichten:
Delphi-Quellcode:
procedure TfrmMain.VSTCompareNodes(Sender: TBaseVirtualTree; Node1,
Node2: PVirtualNode; Column: TColumnIndex; var Result: Integer);
var
Data1 : PNodeData;
Data2 : PNodeData;
begin
Data1 := Sender.GetNodeData(Node1);
Data2 := Sender.GetNodeData(Node2);
if (Data1.fTyp = Data2.fTyp)
then Result := CompareText(Data1.fPfad, Data2.fPfad)
else Result := Ord(Data2.fTyp = ftDir) - Ord(Data1.fTyp = ftDir);
end;
Gruß Hawkeye