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

Вниз

Нужна помощь по TreeView   Найти похожие ветки 

 
Михалыч   (2016-02-10 22:07) [0]

Здравствуйте мастера! Помогите кто знает пожалуйста. Есть дерево с тремя уровнями вложенности,например:
Продукты
   Хлебо-булочные
             Хлеб
             Булки
   Мясные изделия
            Котлеты
            Отбивные
Напитки
   Соки
            Фанта
            Спрайт
   Спиртные
            Пиво
            Водка
Как-то так, список довольно длинный,все писать не буду. Так вот,
нужно узнать к какому корневому узлу, принадлежит выбранный
дочерний? Конкретно что хлеб это- продукты,а соки это - напитки и т.д...


 
Михалыч   (2016-02-10 23:12) [1]

Чую копать надо в сторону Parent, а как накодить не знаю..  ((


 
Михалыч   (2016-02-10 23:24) [2]

TreeView1.Selected.Parent.Text дает предыдущего а не главного.. ((
Тоесть если выбрать Фанта дает Соки, а нужно Напитки
Правильный результат лишь при выборе узлов первого уровня


 
Михалыч   (2016-02-10 23:30) [3]

Сделал пока так:
if TreeView1.Selected.Level>0 then
  begin
  if TreeView1.Selected.Level=1 then ShowMessage(TreeView1.Selected.Parent.Text);
  if TreeView1.Selected.Level=2 then ShowMessage(TreeView1.Selected.Parent.Parent.Text);
  end;

Но наверно можно изящнее и короче написать.
А вот как незнаю..


 
Германн ©   (2016-02-11 01:31) [4]


> Но наверно можно изящнее и короче написать.

Сомневаюсь. Ну разве что уже кем-то написана такая функция. Тогда весь код будет в одной строке.


 
KilkennyCat ©   (2016-02-11 09:08) [5]


> можно изящнее и короче написать.

при таком количестве уровней не имеет смысла.
если уровней будет куча, можно в цикле получать родителя, пока не будет достигнут верхний уровень.

что-то типа: (не помню уже делфи)
node = TreeView.Selected;
While (node.level != 2) {
    node = node.parent;
}
result = node.text;



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

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

Наверх




Память: 0.48 MB
Время: 0.003 c
15-1469916369
Kilkennycat
2016-07-31 01:06
2018.01.28
С Днём ВМФ!


15-1469800634
Fiend
2016-07-29 16:57
2018.01.28
Хоспади, сколько лет то прошло


11-1266587049
RusSun
2010-02-19 16:44
2018.01.28
Можно ли узнать координаты p.x p.y мыши


2-1455183887
lewka
2016-02-11 12:44
2018.01.28
Выполнение запроса в Access


6-1284029407
Dmitriy
2010-09-09 14:50
2018.01.28
как сжать запрос?