Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Построение дерева [D6, Win2k]


Страницы:   1 2

Илайдж ©   (2003-03-03 17:22:00) 

Есть табличка
ID PARENT_ID NAME
1 0 Основная ветка
2 1 Подветвь 1
3 2 Подветвь 1-1
4 1 Подветвь 2
5 4 Подветвь 2-1

Как:
1 - вытащить одним запросом всю структуру дерева
2 - построить его?

Заранее сенк.


Илайдж   (2003-03-03 17:49:00) [21]

А..я кажется понял, упорядочить таким образом, а потом прогнать через while not eof?
Сенк, попробую.


gsu   (2003-03-03 17:47:00) [22]

procedure TForm1.Button2Click(Sender: TObject);
var
tn: TTreeNode;
begin
with TreeView1.Items do
begin
Clear;
tn:=Add(nil, "1");
tn:=AddChild(tn, "11");
tn:=Add(tn, "12");
tn:=AddChild(tn, "121");
tn:=Add(tn, "122");
Add(tn, "123");
tn:=tn.Parent;
Add(tn, "13");
tn:=Add(nil, "2");
tn:=AddChild(tn, "21");
tn:=Add(tn, "22");
Add(tn, "23");
end;
end;

И, вообще, смотрите примеры


calm   (2003-03-03 17:44:00) [23]

выбирай все с
order by Parent_id, id
Получается упорядоченная структура. С ней можно работать и построить дерево. Это если одним запросом.

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


Илайдж   (2003-03-03 17:35:00) [24]

Мне нужно построить дерево вида

+ Основная ветка
- Подветвь 1
- Подветвь 1-1
- Подветвь 2
- Подветвь 2-1

Хотелось бы кусочек кода на моем примере


gsu   (2003-03-03 17:30:00) [25]

TTreeView, TTreeNodes

>> 1 - вытащить одним запросом всю структуру дерева
В каком виде ? как в файле ?

>> 2 - построить его?
Add, AddChild


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо