Vorrei selezionare tutti i nodi radice o tutti i nodi figli (non tutti i nodi in un VirtualTreeView).
Ho cercato di utilizzare questo codice per selezionare tutti i nodi principali:Come selezionare tutti i root o tutti i nodi figli in VirtualStringTree?
procedure SelectAllRoots;
var
Node: PVirtualNode;
begin
Form1.VirtualStringTree1.BeginUpdate;
Node := Form1.VirtualStringTree1.GetFirst;
while True do
begin
if Node = nil then
Break;
if not (vsSelected in Node.States) then
Node.States := Node.States + [vsSelected];
Node := Form1.VirtualStringTree1.GetNext(Node);
end;
Form1.VirtualStringTree1.EndUpdate;
end;
mi può dire c'è un piccolo problema. La selezione è incompleta o si blocca. Che cosa sto facendo di sbagliato ?
Modifica:
Uso MultiSelection.
Ho proprietà di selezione multi attivata. Questo mi costringe a usare il Node.States. Spiacente, avrei dovuto dirlo prima. –