Главная страница
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.039 c
1-1091601326
Nnn
2004-08-04 10:35
2004.08.22
Как в программе задать массив-константу?


14-1091511882
g-l-u-k
2004-08-03 09:44
2004.08.22
AspackDie на Delphi


1-1091774644
yozh_programmer
2004-08-06 10:44
2004.08.22
Как проскролить фрейм?


1-1091533799
П7
2004-08-03 15:49
2004.08.22
Умные плагины в DLL


14-1091533035
}|{yk
2004-08-03 15:37
2004.08.22
4 уровневая архитектура???