Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.01.16;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2011.01.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.003 c
15-1285078090
Alkid
2010-09-21 18:08
2011.01.16
Привет с солнечного Кипра


2-1287467671
ixen
2010-10-19 09:54
2011.01.16
Подскажите как написать триггер...


2-1287893500
Beginner2010
2010-10-24 08:11
2011.01.16
TTreeNodes.AddObject


15-1285648858
И. Павел
2010-09-28 08:40
2011.01.16
Go to Ленин. Access denied?


15-1285725122
Дмитрий С
2010-09-29 05:52
2011.01.16
Вызвать диалог смены пароля.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский