Показать сообщение отдельно
  #2  
Старый 20.08.2013, 00:16
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,088
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от AlexandrV
Как можно получить индекс самого первого узла где находиться выделенный узел
Рекурсивно идти от TreeView1.Selected до тех пор, пока не получишь Node.Parent = Nil.
Код:
function GetTopNodeIndex(ASelected : TTreeNode) : Integer
var
  Node : TTreeNode;
begin
  Node := ASelected;
  If Node = Nil 
    Then Result := -1
    Else
      Begin
        While Node.Parent <> Nil Do Node := Node.Parent;
        Result := Node.Index;
      End;
end;
Ответить с цитированием