Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Спрятать \ Показать узлы в VirtualTreeView


Автор: pethead 6.11.2008, 12:48
в отрисовке узла у меня стоит проверка данных в узле. и если определенный тип и стоит внешний флажок в программе не показывать узлы с данным типов то делаю..

Node.States:=Node.States:=Node.States-[vsVisible]

и при прорисовке узел исчезает.
все ок.

теперь мне надо их показать обратно.
и че то не получается...

отрисовочное событие уже не возникает т.к. нет узлов для отображения.

надо перебрать все узлы от рута?



Автор: Bose 6.11.2008, 14:40
Цитата(pethead @  6.11.2008,  12:48 Найти цитируемый пост)
Node.States:=Node.States:=Node.States-[vsVisible]

так не надо делать

надо через дерево

VirtualTreeView.FullyVisible[Node] := True / False;
либо 
VirtualTreeView.NodeVisible[Node] := True / False;

не помню точное название свойства.


Автор: aktuba 6.11.2008, 17:19
Цитата(Bose @  6.11.2008,  15:40 Найти цитируемый пост)
так не надо делать

Можно и так, насколько помня. Но, после этого надо перерисовать узел.

Автор: pethead 7.11.2008, 08:17
спасибо.

нашел вот 

.IsVisible[Node]:=

работает идеально!

smile


Автор: serafim0 20.4.2011, 16:36
Цитата(pethead @ 7.11.2008,  08:17)


нашел вот 

.IsVisible[Node]:=

работает идеально!


не идеально. Скролл остается. 
А вот FullyVisible действительно идеально.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)