Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#7

AW: Integer property setzen mit RTTI

  Alt 7. Jun 2011, 06:58
Wisst ihr, wie sehr es "mich" interessiert, was in der DFM steht oder was im OI angezeigt wird?
Garnicht.
Delphi-Quellcode:
SetOrdProp(Font, 'Charset', 123);

SetOrdProp(Font, 'Charset', DEFAULT_CHARSET);

var i: Integer;
IdentToCharset('DEFAULT_CHARSET', i);
SetOrdProp(Font, 'Charset', i);
Es ist und bleibt ein ordinaler Typ und dieser läßt sich via SetOrdProp beschreiben.


Die Anzeige im OI und der String in der DFM werden vom OI und vom DFM-Loader gemacht, da für diesen Typen eine entsprechende Übersetzungstabelle registriert ist.
RegisterIntegerConsts(TypeOf(TFontCharset), IdentToCharset, CharsetToIdent); .
Das Property bleibt aber dennoch ein Byte.
Sauber aneinander vorbeigeredet. Logisch geht das mit SetOrdProp, aber es ging darum, den Wert von DEFAULT_CHARSET zu bekommen, wenn man das nur als string Repräsentation hat. Und genau das hast du mit IdentToCharset getan.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat