すべてのルートノードまたはすべての子ノード(VirtualTreeViewのすべてのノードではありません)を選択します。
私はすべてのルートノードを選択するには、このコードを使用することを試みた: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;
私は小さなグリッチがあります伝えることができます。 選択が不完全であるか、固まっています。私は間違って何をしていますか?
編集:
私はMultiSelectionを使用しています。
マルチ選択プロパティが有効になっています。それはNode.Statesを使用するように強制します。申し訳ありませんが、これまでに言及していたはずです。 –