Текущий архив: 2006.10.15;
Скачать: CL | DM;
ВнизКак сохранить Items в TreeView Найти похожие ветки
← →
apl (2006-09-06 13:02) [0]Подскажите! Есть TreeView отображающий данные из базы данных. Каждый узел дерева содержит объект (TreeNode.Data)
Объекты следующие
type
TListPrivilege = class(TObject)
Caption : String;
kodid : integer;
private
public
constructor Create; virtual;
...
end;
type
TDefPrivilege = class(TListPrivilege)
Notes : WideString;
PersCnt : Longint;
private
public
constructor Create; override;
...
end;
Заполняется дерево как обычно.
var
vk,vks : TTreeNode;
dp,dps : TDefPrivilege;
begin
...
dp:=TDefPrivilege.Create;
....
vk:=TreeView1.Items.AddObject(nil,dp.GetCaption,dp);
...
dps:=TDefPrivilege.Create;
...
vks:=TreeView1.Items.AddChildObject(vk,dps.GetCaption,dps);
end;
Вся проблема в том, что в этот TreeView заталкивается очень большой справочник нескольких уровней вложенности. Справочник практически не изменяется. Заполняется достаточно заметное время, т.к. приходится выполнять много запросов к базе для каждого узла для каждого уровня вложенности. Попробовал считать весь справочник одним запросом и «ковыряться» в наборе - быстрее, но не особо существенно. Хотел сохранить сформированное дерево в виде файла на диске (SaveToStream (?)), но сохранились только названия из узлов.
Как можно сохранить и объекты из всех узлов для восстановления в последстивии.
← →
PSPF2003 © (2006-09-06 13:16) [1]
> Как можно сохранить и объекты из всех узлов для восстановления
> в последстивии.
Я сохранил все в XML, а потом загружал.
← →
PSPF2003 © (2006-09-06 13:18) [2]Могу пример БД-шный дать.
Страницы: 1 вся ветка
Текущий архив: 2006.10.15;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.039 c