Форум: "Начинающим";
Текущий архив: 2006.06.04;
Скачать: [xml.tar.bz2];
Вниз?TreeView Сохранение и загрузка с учётом записанных данных? Найти похожие ветки
← →
Николай Владимирович (2006-05-19 16:10) [0]Помогите лыди опытные
Как сохранить treeView с даными записанными в свойство data для каждого узла (данные: путь к файлу,..(структура)) в файл.
А потом загрузить это дерево с данными для каждого узла, соблюдая родительские и дочерние узлы.
Не прозодите мимо
← →
Сергей М. © (2006-05-19 16:13) [1]Ув. Николай Владимирович !
Мы бы и рады тебе помочь, но ты в свойсве data держишь инф-цию под грифом "Совершенно секретно"..
← →
Николай Владимирович (2006-05-19 16:20) [2]Секрета нету....
PnodeOptions=^nodeOptions; //Указатель на структуру
NodeOptions=record
way:string[255]; //к файлу
typeK:integer; //нужный мне признак
end;
Я использую указатель на структуру записывая её в котейнер типа tlist.
Пытался из неё сохранять.....Не могу.....
← →
Сергей М. © (2006-05-19 16:33) [3]
> Пытался из неё сохранять.....Не могу.....
>
Ув. Николай Владимирович !
Судя по отсутствию комментариев к "пытался" Вы - сексот, а судя по отсутствию к "не могу" Вы - импотент. Что мне думать по этому поводу ?)
← →
Николай Владимирович (2006-05-19 16:38) [4]Может совет дашь? =)
← →
vovnuke © (2006-05-19 16:41) [5]2 [4] Николай Владимирович (19.05.06 16:38)
> Может совет дашь? =)
может код приведешь, вот на эту тему:
> Пытался из неё сохранять.....Не могу.....
← →
Ega23 © (2006-05-19 17:00) [6]Ой, способов, на самом деле - тьма. Можно всё в один неструктурированый бинарник пихать, с указанием смещения внутре. Можно Data для каждого узла в отдельном файле хранить. Можно в одном, ибо структура имеет фиксированный размер.
Но в любом случае придётся делать свой "сохранятор" и свой "загружатор".
← →
Николай Владимирович (2006-05-19 17:06) [7]где посмотреть примеры на эти "сохраняторы" и свой "загружаторы" не знаешь?
Может даш ссылку полезную?
"Можно Data для каждого узла в отдельном файле хранить" - интересная идея, но не для большого дерева.
← →
Ega23 © (2006-05-19 17:11) [8]
> где посмотреть примеры на эти "сохраняторы" и свой "загружаторы"
> не знаешь?
> Может даш ссылку полезную?
>
> "Можно Data для каждого узла в отдельном файле хранить"
> - интересная идея, но не для большого дерева.
Дык, самому придумывать надо.
Сохранение самого дерева, без Data проблемы вызывает, или нет?
← →
Николай Владимирович (2006-05-19 17:23) [9]Конечно не вызывает!
Скажи пожалуйста
где посмотреть примеры на эти "сохраняторы" и свой "загружаторы"?
← →
Ega23 © (2006-05-19 17:31) [10]Да нет никаких примеров.
Лично я пошёл бы следующим образом:
Сохранение:
1. В структуру NodeOptions=record добавил бы поле NodeIndex:Integer и при добавлении узла к дереву прописывал бы туда TTreeNode.AbsoluteIndex
2. Создать File of NodeOptions
3. Пробежаться по всем узлам дерева и записать последовательно каждую структуру в файл.
4. Сохранить дерево.
Загрузка:
1. Загрузить дерево.
2. Открыть файл с данными.
3. Последовательно прочитать все данные из файла, создавая в памяти структуру
4. При создании каждой из структур будет определено поле NodeIndex.
5. Найти в дереве узел с AsoluteIndex=NodeIndex
6. Проставить в поле Data полученного узла указатель на соответствующую структуру
Вот таким бы образом я действовал. Насчёт AbsoluteIndex я не совсем уверен, но попробуй, может получится.
Если я не прав, то мастера меня поправят.
← →
Николай Владимирович (2006-05-19 17:39) [11]Я видел это свойство AsoluteIndex но не смог его найти
procedure TMainForm.TreeView1Changing(Sender: TObject; Node: TTreeNode; var AllowChange: Boolean);
begin
end;
как например обратится к AsoluteIndex в этой процедуре
Спасибо
← →
Alien1769 © (2006-05-19 17:50) [12]
> как например обратится к AsoluteIndex в этой процедуре
Мы все учились понемногу, чему нибудь и как нибудь!?!
Так вспомнилось.
← →
Николай Владимирович (2006-05-19 17:52) [13]Понятно!
Ну а к делу как? я не смог найти!?
← →
vovnuke © (2006-05-19 18:05) [14]2 [11] Николай Владимирович (19.05.06 17:39)
Node.AbsoluteIndex
← →
Николай Владимирович (2006-05-19 19:17) [15]Всё гениальное просто....
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.06.04;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.049 c