Вниз
Скачать: CL | DM;

Компонент "Дерево"   Найти похожие ветки 

← →
Beginner2010   (2010-10-25 08:08) [0]

Посоветуйте, плиз, невизуальный компонент, содержащий данные в виде дерева и занимающий минимальный объем в памяти. Узлов очень много, поэтому не хочется использовать стандартные TTreeView и TVirtualTreeview.


← →
George ©   (2010-10-25 08:15) [1]

VirtualTreeView.
Скачать где-то тут: http://www.soft-gems.net/index.php?option=com_content&task=view&id=12&Itemid=33
Неплохой мануальчик для старта тут: http://forum.vingrad.ru/forum/topic-97620.html


← →
И. Павел ©   (2010-10-25 08:16) [2]

Если невизуальный и критична скорость и память, то, наверное, лучше всего самому сделать: каждый узел может содержать помимо своей информации, указатель на родителя. Ну и, если потребуется, для ускорения операций поиска что-нибудь добавить.

Еще можно использовать граф. Это удобно и быстро в обработке, но ресурсов съест много.


← →
George ©   (2010-10-25 08:24) [3]


> И. Павел ©   (25.10.10 08:16) [2]

В этом плане как раз таки Virtual Tree View крут. Вряд ли автор быстро и хорошо напишет что-то альтернативное.


← →
sniknik ©   (2010-10-25 09:37) [4]

> невизуальный компонент, содержащий данные в виде дерева
"это фантастика сынок" © реклама сыра.

данные в виде дерева можно только отобразить... а вот содержать... как ты себе это представляешь? память она вообще "в одну строку".

> ... указатель на родителя ...
ID записи, + указатель на родителя и все "вырождается" в плоскую структуру, такую, в которой хранят "деревья" в базе.
ну так если не нужно визуального представления, то может просто не "разворачивать" дерево, а хранить как есть в таблице/виртуальной таблице если уж нужно в памяти. а там уж и поиск есть, и фильтры и индексы для ускорения поиска (за счет памяти, но по другому не бывает).


← →
Юрий Зотов ©   (2010-10-25 10:29) [5]

type
 TMyTreeNode = class
 public
   Parent: TMyTreeNode;
   Children: TObjectList;
   Data: Pointer;
 end;

Это все, что нужно для хранения данных в виде дерева при минимальных затратах памяти.


← →
Игорь Шевченко ©   (2010-10-25 11:42) [6]


> Посоветуйте, плиз, невизуальный компонент, содержащий данные
> в виде дерева


TComponent


← →
Медвежонок Пятачок ©   (2010-10-25 11:46) [7]

а я знаю, но не скажу какой подходит лучше всего


← →
brother ©   (2010-10-25 11:48) [8]

> а я знаю, но не скажу какой подходит лучше всего

я догадываюсь) твой любимый XML? ))))


← →
Медвежонок Пятачок ©   (2010-10-25 11:50) [9]

не скажу же сказал.


← →
brother ©   (2010-10-25 12:10) [10]

уже все сказал ;)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.009 c
3-1251200767
DelphiN!
2009-08-25 15:46
2011.01.16
Аналог Copy(как в Делфи) для TSQL


2-1286258206
alekseyii
2010-10-05 09:56
2011.01.16
ClientSocket получает не полный ответ Help!!!


2-1287417521
кроссман
2010-10-18 19:58
2011.01.16
Выделить строку в listbox


2-1287557759
LDV
2010-10-20 10:55
2011.01.16
Связать алгоритм с классами


6-1233263581
Josh
2009-01-30 00:13
2011.01.16
Утечка памяти при мультипоточном сканировании сети NetShareEnum




   Наверх