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

Вниз

помогите с GetPropValue()   Найти похожие ветки 

 
Starkom   (2002-07-30 07:49) [0]

Есть такой код
Result:=IntToStr(Integer(GetPropValue(FComponents[0], FPropName,True)));

Где точно незакосяченый FComponents[0] типа TMyField (наследник TPersistent), FPropName тоже нормальная строка с именем свойства, которое точно есть.
Но такой код выдает всякую абракадабру.
Может кто подскажет возможную причину?
Такая же строка прекрасно работает для других свойств у многих других классов (например TFont или собственных классов).


 
Eugene Lachinov   (2002-07-30 08:28) [1]

А function GetOrdProp(Instance: TObject; const PropName: string) : LongInt, что выдает ?


 
Starkom   (2002-07-30 08:34) [2]

GetOrdProp(Instance, PropInfo) то как раз лажу и выдает, при том что Instance = FComponents[0], PropInfo вроде нормальный (там есть PropInfo^.Index и Default вроде отрицательные, но у других классов эти поля тоже бывают отрицательными, а функция выдает нормальный результат)


 
Юрий Зотов   (2002-07-30 08:56) [3]

Искомое свойство - published?


 
Starkom   (2002-07-30 09:02) [4]

да, конечно.
для того он и наследутся от TPersistent.
property MyField:integer read FMyField write FMyField;


 
Программист на С++   (2002-07-30 09:18) [5]

А в каком контексте этот код используется ?


 
Starkom   (2002-07-30 09:22) [6]

Пишется для небольшой системки свое подобие инспектора объектов.


 
Программист на С++   (2002-07-30 09:31) [7]

FComponents[0] и наследник от TPersistent это совместимо ?


 
Starkom   (2002-07-30 09:40) [8]

мда, похоже, что проблема вовсе не в GetPropValue
окно Watch -
TObject(FComponents[0]).ClassName = "TMyField", но
TMyField(FComponents[0]) = inaccesible value, при том что
TMyField(FComponents[0]).Pseudo (есть там такое поле) выдает правильный результат.



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

Текущий архив: 2002.08.12;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.006 c
4-35502
Pavlik Morozov
2002-05-26 13:44
2002.08.12
System Tray иконки


7-35477
omckma
2002-05-15 10:41
2002.08.12
Системная дата и время


1-35356
GenaPL
2002-07-30 14:34
2002.08.12
Подскажите хороший редактор баз данных.


1-35274
Evgeniy_MF
2002-07-31 15:27
2002.08.12
Помогите вытащить путь..


4-35495
pantera
2002-06-04 08:45
2002.08.12
Win API





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