Форум: "Основная";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];
ВнизМожно ли объявить новый класс вместо старого... Найти похожие ветки
← →
Sergp (2003-09-27 19:28) [0]Может вопрос и тупой или я неясно выразился но не судите строго...В Delphi я все еще практически новичек....
Вобщем работаю с TTreeview.
Меня не устраивает класс TTreeNode. (Хочу туда кое-чего добавить)
Могу ли я объявить новый класс TTreeNode, который бы являлся наследником "старого" TTreeNode, но чтобы при этом дочерние классы старого TTreeNode стали дочерними классами новообъявленого TTreeNode. В смысле чтобы не переделывая компонент TTreeview, расширить его возможности?
← →
SergP (2003-09-27 22:11) [1]Мастера! Что, никто ничего не скажет?
← →
me (2003-09-27 22:23) [2]В D7 TV имеест событие OnCreateNodeClass,
в котором можно указать класс узла.
Есть ли это св-во в D5, я не знаю, нет его под рукой.
Посмотри в исходниках, как создаются узлы, и будет ясно,
можно ли это сделать, и как.
Если там есть фабричный метод
function CreateNode: TTreeNode; virtual;
то его можно перекрыть в наследнике TV.
Кстати, кое-что добавить ты можешь в TTreeNode.Data: Pointer,
специальное св-во под пользовательские данные.
← →
SergP (2003-09-28 07:37) [3]
> Кстати, кое-что добавить ты можешь в TTreeNode.Data: Pointer,
>
> специальное св-во под пользовательские данные.
Хм... А действительно в принципе вместо объявления нового класса , я могу обойтись юзанием ttreenode.data. Как-то не подумал раньше об этом.
Спасибо что напомнил...
← →
HolACost! (2003-09-28 09:43) [4]Всё можно! Но немного мозгов нажод!
Для самой хорошей и правильной работы тебе налдо:
- Создать наследника от TTreeNode - И добавить туду, то что ты хочешь!
- создать наследника от ТриВью и в нем добавить набор методов для работы с новым классом TMyTreeNode!
- можно и без второго... делел!
- а для правильной работы родительских методом используй <TMyTreeNode> as TTreeNode
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c