Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.04.2007, 08:33   #1
Seqular
Пользователь
 
Аватар для Seqular
 
Регистрация: 16.02.2007
Сообщений: 37
По умолчанию Не могу разобраться с TreeView

Столкнулся вот с такой проблемой.. не знаю, как решить. На форме контрол TreeView1.
В общем код:

Код:
 
Var     TopNodeItem: TTreeNode;
....
Begin
TopNodeItem := TTreeNode.Create(nil);
TopNodeItem := TreeView1.Items.Add(nil, '1');
ShowMessage(TopNodeItem.text);
TopNodeItem.Destroy;
End;
Ничего необычного! Выводится сообщение "1", но после этого в TreeView пусто!! Элемент "1" остается только если не делать TopNodeItem.Destroy... Почему так? Ведь, как я понимаю, дестрой делать обязательно?

Последний раз редактировалось Seqular; 14.04.2007 в 08:36.
Seqular вне форума Ответить с цитированием
Старый 14.04.2007, 12:55   #2
bphoenix
Пользователь
 
Аватар для bphoenix
 
Регистрация: 12.04.2007
Сообщений: 21
По умолчанию

Создавать экземпляр класса TTreeNode вручную вовсе необязательно. Вместо этого просто используй это:
TreeView1.Items.Add(nil, '1');

Уничтожать ветку тоже не нужно, обо всём позаботится сам TreeView
Пусть баги обходят вас стороной
bphoenix вне форума Ответить с цитированием
Старый 14.04.2007, 16:12   #3
Seqular
Пользователь
 
Аватар для Seqular
 
Регистрация: 16.02.2007
Сообщений: 37
По умолчанию

Мне это понадобилось, чтобы "запомнить" запись, которая добавилась.. И потом быстро к ней вернуться... Вот. Есть ли другие способы?
Seqular вне форума Ответить с цитированием
Старый 14.04.2007, 17:37   #4
bphoenix
Пользователь
 
Аватар для bphoenix
 
Регистрация: 12.04.2007
Сообщений: 21
По умолчанию

Ну тогда ты сделал почти правильно Нужно вот так:

var TopNodeItem: TTreeNode;
...
begin
TopNodeItem := TreeView1.Items.Add( nil, '1' );
...
// если нужно удалить ветку в процессе работы программы пиши:
TopNodeItem.Delete; // удаляет ветку и всех её деток
end;
Пусть баги обходят вас стороной
bphoenix вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не могу разобраться Var17 Общие вопросы Delphi 6 27.03.2010 01:21
Не могу разобраться с типами DM_bite Помощь студентам 6 11.08.2008 11:22
Не могу разобраться с php_auto_prepend_file Reverent PHP 1 04.08.2008 11:02