Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Property Readonly setzen - gespeicherte Werte

  Alt 3. Apr 2017, 14:25
entweder
Delphi-Quellcode:
if MyComponent is TCustomEdit then
  TEdit(MyComponent).ReadOnly := ReadOnlyStatus
else if MyComponent is ... then
  ...
Denn z.B. bei DevExpress hast du sonst richtig Spaß, wenn sich das atattdessen in Edit.Properties.ReadOnly versteckt.

SetPropValue:
XE2 kennt schon die erweiterte RTTI (RTTI.pas), dann verwende besser die darin enthaltenen neueren APIs, anstatt dieser uralten API.

Aber ich bin mir sicher, dass SetPropValue auch Boolean kann.
Eventuell aber nur, wenn man den Wert vorher in einen Ordinalen Typ umwandelt Ord(ReadOnlyStatus) ,
denn Delphi nutzt Boolean (1 Byte groß mit 0 und +1), welches als VarType als ein Integer mit Min=0 und Max=1 definiert ist, und Variant kennt nur WordBool (2 Byte groß mit 0 und -1)
$2B or not $2B
  Mit Zitat antworten Zitat