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

Вниз

Как в TreeView вернуться в прежнюю ветку после обновления дерева?   Найти похожие ветки 

 
NAE   (2003-02-03 10:56) [0]

Собственно, нужно после обновления ветвей дерева вернуться в прежнее место.


 
БИС   (2003-02-03 11:00) [1]

а что мешает?
запомни адрес итема. Если после обновления он остался, то сделай активным


 
NAE   (2003-02-03 11:13) [2]

Если можно фрагмент кода ....


 
NAE   (2003-02-03 12:16) [3]

Что значит "запомни адрес итема". Где копать?


 
uw ©   (2003-02-03 13:15) [4]

Посмотри какой-то код


procedure TfmTree.Rebuild;
var
i, j : Integer;
cRec : PCommonRec;
Tree : TList;
TopcRec : PCommonRec;
SelectedcRec : PCommonRec;
begin
for i := 0 to tvTree.Items.Count - 1 do begin
cRec := tvTree.Items[i].Data;
cRec.Expanded := tvTree.Items[i].Expanded;
end;

if Assigned(tvTree.TopItem) then
TopcRec := tvTree.TopItem.Data
else
TopcRec := nil;

if Assigned(tvTree.Selected) then
SelectedcRec := tvTree.Selected.Data
else
SelectedcRec := nil;

Tree := TList.Create;
Tree.Capacity := 512;
for i := 0 to tvTree.Items.Count - 1 do
Tree.Add(tvTree.Items[i].Data);

tvTree.Items.BeginUpdate;
try
tvTree.Items.Clear;

BuildTree;

for i := 0 to tvTree.Items.Count - 1 do begin
cRec := tvTree.Items[i].Data;
if cRec.ObjTypeID = otidRETR then
for j := 0 to Tree.Count - 1 do
if cRec.ObjNo = PCommonRec(Tree[j]).ObjNo then begin
tvTree.Items[i].Expanded := PCommonRec(Tree[j]).Expanded;
Break;
end;
end;

if Assigned(SelectedcRec) then
for i := 0 to tvTree.Items.Count - 1 do
if PCommonRec(tvTree.Items[i].Data).ObjNo = SelectedcRec.ObjNo then begin
tvTree.Selected := tvTree.Items[i]; Break;
end;

if Assigned(TopcRec) then
for i := 0 to tvTree.Items.Count - 1 do
if PCommonRec(tvTree.Items[i].Data).ObjNo = TopcRec.ObjNo then begin
tvTree.TopItem := tvTree.Items[i]; Break;
end;
finally
tvTree.Items.EndUpdate;
end;

for i := 0 to Tree.Count - 1 do
Dispose(Tree[i]);
Tree.Free;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
1-38214
Zirus
2003-02-05 06:44
2003.02.13
Создание image


3-38047
Tabu13
2003-01-29 11:40
2003.02.13
ADOQuery не хочет закрываться


7-38607
Shluz
2002-12-09 12:51
2003.02.13
Левый нижний угол экрана


6-38432
Alexo Kalinovski
2002-12-13 16:16
2003.02.13
Запуск команды на Linux-сервере из Delphi


3-38088
Relict
2003-01-27 15:25
2003.02.13
Опять запись картинок на сервер