Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.08;
Скачать: CL | DM;

Вниз

TreeView   Найти похожие ветки 

 
jjj ©   (2006-09-22 18:12) [0]

А как добавить в ручную ветку дерева (основную и дочернюю)?


 
alles ©   (2006-09-22 18:16) [1]

как добавить в ручную
это программно чтоли?


 
Ega23 ©   (2006-09-22 18:18) [2]

вот рекурсивный метод потомка TCustomTreeView. Строит дерево по списку объектов TKdrDBTreeViewItemIdent

procedure TCustomKdrDBTreeView.AddAllNodes(ParentID: Variant;
 ParentNode: TTreeNode);
var
k:Integer;
CurrNode:TTreeNode;
begin
for k:=0 to FTreeItems.Count-1 do
 begin
  With TKdrDBTreeViewItemIdent(FTreeItems.Items[k]) do
   begin
    if (Node<>nil) or (ParentKeyFieldValue<>ParentID) then Continue;
    if ParentNode=nil then
     CurrNode:=Items.Add(nil, DisplayFieldValue)
    else
     CurrNode:=Items.AddChild(ParentNode, DisplayFieldValue);
     CurrNode.ImageIndex:=ImageIndex;
     CurrNode.SelectedIndex:=ImageIndex;
    Node:=CurrNode;
    CurrNode.Data:=FTreeItems.Items[k];
    AddAllNodes(KeyFieldValue, CurrNode);
   end; // With
 end; // for

end;


 
jjj ©   (2006-09-22 18:19) [3]


> alles ©   (22.09.06 18:16) [1]

Ага, програмно...


 
jjj ©   (2006-09-22 18:42) [4]

Что-то не очень получается, но скорее всего я чего-то не догоняю :(
У меня следующая ситуация.
Есть таблица с полями id, name, parent
parent - это id родителя.

Вот по этой таблице мне и надо построить дерево.
Я раньше никогда с деревьями не работал, поэтому если кто может помочь, подскажите пожалуйста поподробнее. Очень надо.
Спасибо.



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

Текущий архив: 2006.10.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.041 c
3-1154889900
Ilg
2006-08-06 22:45
2006.10.08
Ошибка при удалении


15-1158673674
DillerXX
2006-09-19 17:47
2006.10.08
Возможно ли найти что-то новое?


15-1158316984
Тульский
2006-09-15 14:43
2006.10.08
Visual Prolog


2-1158667789
KyRo
2006-09-19 16:09
2006.10.08
Залипание клавиш


2-1158907765
Новый_Юзер
2006-09-22 10:49
2006.10.08
Как получить серийник виндовса?