![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить всех родителей в TreeView [D7, WinXP]
FreeTT © (2007-09-11 15:37:00)Добрый день! Хочу получить всех вышестоящих родителей в дереве, вот думаю, может есть какая стандартная штучка у кАмпанента, которая это вернет? Если есть - подскажите или напишете другой выход, если первый, как таковой отсутствует. Спасибо.
FreeTT (2007-09-11 16:17:00) [1]function TRec.GetAllParents(Node:TTreeNode):string;
begin
result:='';
while(Node<>nil) do begin
result:='\'+Node.Text+result;
Node:=Node.Parent;
end;
end;
Вот он злой код =). Спасибо ребята за терпение =)
Ega23 (2007-09-11 16:04:00) [2]Это даже не рекурсия, одного While достаточно
Сергей М. (2007-09-11 16:02:00) [3]Именно у TTreeView ?
Нет. У других подобных, возможно, есть.
FreeTT (2007-09-11 16:01:00) [4]Спасибо, это я знал. А у компонента есть что-нибудь автоматизированное?
Сергей М. (2007-09-11 15:59:00) [5]
> FreeTT (11.09.07 15:55) [3]
Ну так это ж проще простого, как верно замечено в [2])
Любой потомок ссылается на своего прямого предка (родителя) через зн-е св-ва Parent. Узел-"сирота" (корневой) имеет зн-ем этого св-ва nil-значение. Дальше сам сообразишь ?)
FreeTT (2007-09-11 15:55:00) [6]Сорри. Я имел ввиду всех предков.
> Сергей М. © (11.09.07 15:48) [1]
> Родитель всегда один. Или ни одного, если узел корневой.
>
>
> Может быть ты ведешь речь о списке узлов-предков ?
Молоток, верно подметил =)
Ega23 (2007-09-11 15:51:00) [7]От листа к корню - да это же элементарно!
Сергей М. (2007-09-11 15:48:00) [8]Родитель всегда один. Или ни одного, если узел корневой.
Может быть ты ведешь речь о списке узлов- предков?