私はVirtualTree.IsVisible[n] := false;
を使っていくつかのVirtualTreeViewアイテムを隠しました。どのように表示するかVirtualTreeViewの表示項目のみ
1つの関数では、VirtualTree.GetNextSelected(n);
メソッドを使用してすべての選択項目を反復処理します。しかし、問題があります。たとえば、Ctrlキーを押しながらShiftキーを押しながらいくつかの項目を手動で選択すると、選択された項目がループします。
Ctrlキーを押しながらAを押してすべてを選択すると、GetNextSelected
は私にすべてのノードを表示します。
私はif (VirtualTree.IsVisible[n]) ...
をチェックしてすべてのアイテムをループしないようにしましたが、目に見えるものだけをフェッチしましたが、これはバグのようです。あるいは、CTRL + Aがどのように動作するかを制御するオプションがあります。またはそれらのすべて?
これはバグですか、いくつかの選択肢がありませんでした(私はそれらをすべて調べました)か、または可視ノードだけをループするための他の方法を使用するはずですか?
これはバグではなくデザイン上の選択です。あなたはそれに適応する必要があります。 –
@DavidHeffernanこれは本当ですか?なぜキーボードのShift +矢印キーを使用して選択すると、表示されているノードだけが選択され、隠されている可視ノード間のすべてのノートが選択されないのですか? CTRL + Aは隠れたものを選択しますが、SHIFT + Arrowは選択しないのは奇妙です。 – Coder12345
CTRL + AについてVirtual TreeViewはほとんどの他のコントロールやWindowsエクスプローラと同様に動作しますが、ユーザーにとっては予期せぬ動作が予想されます。 –