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

Вниз

Изменение TTreeNode   Найти похожие ветки 

 
П7   (2004-08-04 13:42) [0]

Товарищи!
Мне нужно, что бы каждый узел TTreeView по мимо стандартного Text имел бы ещё параметр P7Data (пользовательский тип). Что я туда запихаю - это не столь важно. Это будет запись.
Я это предположил сделать заменой в TTreeView всех TTreeNode на P7TreeNode. Где P7TreeNode:

P7TreeNode = class( TTreeNode )
 Data : P7Data;
end;

Но как это безболезненно сделать, не переписывая TTreeView - не знаю. Какие мыли?


 
Sergey Kaminski ©   (2004-08-04 13:46) [1]

Да, в принципе, можно использовать и свойство Data: Pointer.


 
Sergey Kaminski ©   (2004-08-04 13:46) [2]

Да, в принципе, можно использовать и свойство Data: Pointer.


 
П7   (2004-08-04 13:52) [3]

Так, погодь. Что-то я его не усмотрел. Т.е. Я так понимаю, что оно там в принцыпе нафиг не нужно. Сделано специально для того, чтобы программер туда указатели на свои данные пихал? Если так, то вопрос снимается. Если нет, то просто я по другому обзаву свойство:

P7TreeNode = class( TTreeNode )
PropData : P7Data;
end;


 
KSergey ©   (2004-08-04 13:57) [4]

> [3] П7   (04.08.04 13:52)
> Сделано специально
> для того, чтобы программер туда указатели на свои данные
> пихал?

Именно для этого


 
Sergey Kaminski ©   (2004-08-04 13:59) [5]

Я так понимаю, что оно там в принцыпе нафиг не нужно
Не нам решать, о товарисч.


 
П7   (2004-08-04 14:11) [6]


> Sergey Kaminski ©   (04.08.04 13:59) [5]

Я имел в виду чисто автономное значение... Если программист этот проперть не тронет, то оно и использоваться не будет. Так что в этом отношение решать как раз нам... (:


 
Iconka ©   (2004-08-04 14:13) [7]


> Но как это безболезненно сделать, не переписывая TTreeView
> - не знаю. Какие мыли?

Обработай у TTreeView событие OnCreateNodeClass, и в нем "подсунь" свой класс с дополнительными полями.


 
Sergey Kaminski ©   (2004-08-04 14:15) [8]

Именно для того и есть этот проперть, чтоб программист его трогал :)
Вроде как проперть Tag или, еще лучше пример TStrings.Objects


 
П7   (2004-08-04 14:16) [9]

Всем спасибо! Тема закрыта!



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

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

Наверх




Память: 0.48 MB
Время: 0.045 c
1-1091709008
banderas
2004-08-05 16:30
2004.08.22
Размер формы


3-1090921050
Artjom
2004-07-27 13:37
2004.08.22
Изменение структуры таблицы


14-1090698815
Marser
2004-07-24 23:53
2004.08.22
Уезжаю!


14-1091273567
ruslan
2004-07-31 15:32
2004.08.22
dll i res


3-1091351123
Koala
2004-08-01 13:05
2004.08.22
Понять не могу....(делаю перенос данных из Dbase в Firebird)