Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Компоненты";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Published-свойство типа <B>TClass</B> - не читается в Runtime.   Найти похожие ветки 

 
Saint   (2004-06-25 14:52) [0]

Нужно прочитать свойство типа TClass из объекта. Имя свойства известно, но GetPropInfo(o,"PropName") возвращает nil!!!
Для аналогичной ситуации со свойством типа integer - все работает...

Приводить к типу для чтения свойства напрямую нельзя,(возможных типов много, одного потомка с этим свойством нет, и кроме того не хотелось бы линковать библиотеку с кучей модулей, на которые появится ссылка в коде при использовании приведения типов).

Так что выход один - читать через RTTI. А тут такой косяк. Помогите инфой...


 
Юрий Зотов ©   (2004-06-25 15:49) [1]

Насколько помню, для метаклассов RTTI не генерируется - а если так, то получить ссылку не конкретный класс через RTTI и не получится.

Но решение все же есть, простое и не раз проверенное. Само свойство можно сделать строковым (имя класса), а в его методе Set уже получать (и сохранять в поле) ссылку на класс (см. GetClass и RegisterClasses).



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

Форум: "Компоненты";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.042 c
14-1117816051
ArMellon
2005-06-03 20:27
2005.06.29
Лучшие песни Within temptation


3-1116125866
Lex_!
2005-05-15 06:57
2005.06.29
Поиск по БД


14-1117710930
Andy BitOff
2005-06-02 15:15
2005.06.29
MakeCab.exe


14-1117479218
NailMan
2005-05-30 22:53
2005.06.29
Надо есть правильные сладости! :-)))


3-1116718926
grol
2005-05-22 03:42
2005.06.29
Как из ADOQuery ков перенести информацию в Excel?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский