Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.009 c
8-27612
NetKnight
2003-06-10 11:27
2003.10.09
Как смиксовать 2 файла ?


7-27748
Novenkij
2003-07-27 16:21
2003.10.09
Как узнать объем оперативной памяти ( MB RAM ) ???


3-27413
denis24
2003-09-17 17:29
2003.10.09
кодировка в ole db 4.0


3-27343
MJ
2003-09-19 23:18
2003.10.09
динамический запрос


3-27369
Леонид
2003-09-12 12:03
2003.10.09
Чтоб открывалась запарол. таблица без запроса, как применить





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский