Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.06.2013, 14:52
NewCoder NewCoder вне форума
Прохожий
 
Регистрация: 16.02.2012
Сообщения: 26
Репутация: 10
По умолчанию AbsoluteIndex у добавленного узла в Delphi

Добрый день, как узнать AbsoluteIndex у добавленного узла в TreeView ?
Ответить с цитированием
  #2  
Старый 26.06.2013, 15:43
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Смех

свойство
Код:
property AbsoluteIndex: Integer;
у TTreeNode
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #3  
Старый 26.06.2013, 18:51
NewCoder NewCoder вне форума
Прохожий
 
Регистрация: 16.02.2012
Сообщения: 26
Репутация: 10
По умолчанию

Я знаю, что AbsoluteIndex присваивается так abind:=TreeView1.Items.Item[i].AbsoluteIndex; Но вопрос у меня в том, как узнать индекс у ВНОВЬ добавленного узла, т.е. есть ли какой нибудь признак у узла что он НОВЫЙ. Или может быть после добавления чтоб он как то автоматом выделился и тогда я бы присвоил переменной индекс выделенного узла.

Последний раз редактировалось NewCoder, 26.06.2013 в 18:54.
Ответить с цитированием
  #4  
Старый 26.06.2013, 18:58
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Код:
ShowMessage(IntToStr(TreeView1.Items.Add(nil, IntToStr(GetTickCount)).AbsoluteIndex));
работает 100%
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Этот пользователь сказал Спасибо NumLock за это полезное сообщение:
NewCoder (26.06.2013)
  #5  
Старый 26.06.2013, 19:14
NewCoder NewCoder вне форума
Прохожий
 
Регистрация: 16.02.2012
Сообщения: 26
Репутация: 10
По умолчанию

Не совсем понял как это работает и как ко мне применимо, я добавляю узлы так:
Код:
Form1.TreeView1.Items.Add(Form1.TreeView1.Selected,Edit1.Text);

и дочерние узлы:
Код:
Form1.TreeView1.Items.AddChild(Form1.TreeView1.Selected,Edit1.Text);
При чем GetTickCount - оно определяет время добавления и выдает сообщение?
Ответить с цитированием
  #6  
Старый 26.06.2013, 19:19
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Смех

Цитата:
Сообщение от NewCoder
Не совсем понял как это работает
какое слово в какой строке не понятно?
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #7  
Старый 26.06.2013, 19:26
NewCoder NewCoder вне форума
Прохожий
 
Регистрация: 16.02.2012
Сообщения: 26
Репутация: 10
По умолчанию

Я правильно понимаю - выдается сообщение с индексом добавленного узла?
Правильно ли я делаю:
Код:
ShowMessage(IntToStr(TreeView1.Items.Add(Form1.TreeView1.Selected, IntToStr(GetTickCount)).AbsoluteIndex));
Подчеркнул то место где у меня стоит Edit1.Text, т.е. как мне его сейчас добавлять (текст)?
Ответить с цитированием
  #8  
Старый 26.06.2013, 19:43
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
...как мне его сейчас добавлять (текст)?

Код:
ShowMessage(IntToStr(TreeView1.Items.Add(nil, Edit1.Text).AbsoluteIndex));
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
NewCoder (26.06.2013)
  #9  
Старый 26.06.2013, 19:53
NewCoder NewCoder вне форума
Прохожий
 
Регистрация: 16.02.2012
Сообщения: 26
Репутация: 10
По умолчанию

Всем огромное спасибо, теперь работает как надо!
Ответить с цитированием
  #10  
Старый 27.06.2013, 10:28
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

Ну если совсем правильно, то наверно и AbsoluteIndex не нужен.
Нужно просто получить доступ ко вновь созданному элементу
что нибудь вроде

Код:
var
  NewItem:TTreeViewItem;

  NewItem:=TreeView1.Items.AddChild(TreeView1.Selected,Edit1.Text);

  ShowMessage(IntToStr(NewItem.AbsoluteIndex));
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:50.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter