Конференция "Начинающим" » Как раскрыть/закрыть корневой узел в TTreeView [D6, D7]
 
  • Andrey Konstantinov (24.02.19 08:39) [0]
    Доброго времени суток всем.
    Для заполнения tvSE: TTreeView; сделал отдельную процедуро.
    Есть ситуации когда список очень большой и ветвистый. Хочу сворачивать корневые узлы и запоминать их состояние. Но не получается.
    tvSE.Items[n].Expand(true); //Это я упростил что бы не засорять суть
    Всё равно остаётся false //Узел свёрнут
    Поэтому в конце этой процедуры пишу: tvSE.FullExpand; //Раскрывает все узлы
    И всё дерево постоянно раскрыто, не удобно, пипец.
    У tvSE есть ещё обработчики но при заполнении tvSE этой процедурой не в один обработчик не заходит, вроде больше на tvSE повлиять нечем.
    Подскажите куда копать? Может у TTreeView есть какое нибудь свойство, который заставляет все ноды быть закрытыми, пока её не хряпнеш FullExpand?
  • Andrey K (25.02.19 10:29) [1]
    Нашел решение. Может кому пригодится.
    Я присваивал Expand(true)/Collapse(true) во время построения дерева.
    Перебрал все узлы и раскрыл/закрыл нужные после построения, всё пошло как надо.
  • sniknik © (25.02.19 10:46) [2]
    > Перебрал все узлы и раскрыл/закрыл нужные после построения, всё пошло как надо.
    вместо этого попробуй - Expand(false)/Collapse(false)
  • sniknik © (25.02.19 10:52) [3]
    там просто посмотреть на имя параметра... и все ясно
    procedure TTreeNode.Expand(Recurse: Boolean);
 
Конференция "Начинающим" » Как раскрыть/закрыть корневой узел в TTreeView [D6, D7]
Есть новые Нет новых   [134427   +26][b:0][p:0]