![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как восстановить развертку TTreeView?
@!!ex © (2009-04-18 08:10:00)Есть TTreeView.
Его структура примерно одинаковыя, но периодически приходится его перестраивать. Меняются только самые дальние ветки, у которых уже ответвлений нету.
Обычно дерево частично раскрыто, но когда оно обновляется, то все закрывается. Можно ли как-то восстановить его состояние?
Чтобы после обновления были открыты теже ветки что и до этого?
@!!ex (2009-04-18 10:01:00) [1]В итоге сделал вот так:
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;
@!!ex (2009-04-18 09:33:00) [2]Очищается и полностью строится заново.
MonoLife (2009-04-18 09:26:00) [3]А как оно обновляется? И почему оно обновляется целиком?