Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.05.31;
Скачать: CL | DM;

Вниз

Как восстановить развертку TTreeView?   Найти похожие ветки 

 
@!!ex ©   (2009-04-18 08:10) [0]

Есть TTreeView.
Его структура примерно одинаковыя, но периодически приходится его перестраивать. Меняются только самые дальние ветки, у которых уже ответвлений нету.
Обычно дерево частично раскрыто, но когда оно обновляется, то все закрывается. Можно ли как-то восстановить его состояние?
Чтобы после обновления были открыты теже ветки что и до этого?


 
MonoLife ©   (2009-04-18 09:26) [1]

А как оно обновляется? И почему оно обновляется целиком?


 
@!!ex ©   (2009-04-18 09:33) [2]

Очищается и полностью строится заново.


 
@!!ex ©   (2009-04-18 10:01) [3]

В итоге сделал вот так:

var
 Expanded:array of string;
begin
 for i := 0 to ObjectsTreeView.Items.Count - 1 do
   if ObjectsTreeView.Items[i].Expanded then begin
     SetLength(Expanded,Length(Expanded)+1);
     Expanded[Length(Expanded)-1]:=ObjectsTreeView.Items[i].Text;
   end;

 //обновление списка

 for i := 0 to ObjectsTreeView.Items.Count - 1 do
   for j := 0 to Length(Expanded) - 1 do
     if ObjectsTreeView.Items[i].Text=Expanded[j] then
       ObjectsTreeView.Items[i].Expand(false);
end;



Страницы: 1 вся ветка

Текущий архив: 2009.05.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
15-1238431132
Хибл Герзмаев
2009-03-30 20:38
2009.05.31
Патч MS 08-067


6-1202409335
Del
2008-02-07 21:35
2009.05.31
Определение размера отправленых данных через TSocket


2-1240069481
Coming
2009-04-18 19:44
2009.05.31
Преобразование строк


6-1203404629
stupido
2008-02-19 10:03
2009.05.31
Apache shared module


4-1210363535
Цукор5
2008-05-10 00:05
2009.05.31
сер.номер винчестера в Висте