Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.029 c
1-1117618929
a80h19
2005-06-01 13:42
2005.06.29
Полиморфизм для переменной


1-1118207429
Fanny
2005-06-08 09:10
2005.06.29
Как определить, что принтер не установлен ?


14-1117212894
тихий вовочка
2005-05-27 20:54
2005.06.29
Вроде нашел нормальную вакансию, а тут срам


1-1117614507
SergeiX
2005-06-01 12:28
2005.06.29
использование TListBox и TEdit


3-1116421131
Nadya
2005-05-18 16:58
2005.06.29
данные из InterBase