Главная страница
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.021 c
3-1091188693
Wolfram
2004-07-30 15:58
2004.08.22
Ускорение работы запроса с join


3-1091434818
46_55_41_44
2004-08-02 12:20
2004.08.22
А теперь - Вопрос как создать БД программно...


3-1090587495
MORA
2004-07-23 16:58
2004.08.22
целостность БД


1-1092054292
far
2004-08-09 16:24
2004.08.22
Уничтожение popup меню вручную


1-1091899829
dracula
2004-08-07 21:30
2004.08.22
Как избавиться от подвисания программы