Я пытаюсь получить все дочерние узлы выбранного узла в treeview, но столкнулся с несколькими проблемами.Получение выбранных детей с TTreeview
Возьмите этот TreeView в качестве примера:
Я хочу, чтобы получить все узлы, которые ребенок желтого цвета «Папка» узла, который будет дочерние узлы с синей линией рядом с ним ,
Это то, что я пробовал:
procedure Form1.GetTreeChilds(ANode: TTreenode);
begin
while ANode <> nil do
begin
ListBox1.Items.Add(ANode.Text);
ANode := ANode.GetNext;
end;
end;
Он работает за исключением того, что она также возвращает Пункт 6, который не является дочерним по отношению к желтому цвету «Папке».
Что мне нужно изменить или сделать иначе, чтобы получить дочерние узлы в желтую папку Highligted?
Спасибо.
WAD. Почему вы не используете GetFirstChild и т. Д.? – MartynA
@MartynA Думаю, я упустил это из виду :(Ответ Remy Lebeau - это именно то, что я искал. –
Хорошо. Fwiw, TTreeview + его узлы настолько широко используются, что если его код не работает, это довольно верный признак того, что код не соответствует – MartynA