![]() |
Delphi-Version: XE
RTTI und Enum mit Werten, Bug oder Feature?
Hallo,
ich bin grad über folgendes Phänomen gestolpert: Wenn ich einen Enum definiere und mittels RTTI meine Klasse auslese, funzt alles ganz normal (Code unten). Wenn ich den Enum-Elementen jetzt aber Werte zuweise:
Code:
werden sie in der Schleife nicht mehr aufgelistet.
tenum1 = (fRot=3, fBlau=10);
Isses ein Bug oder kennt jemand dafür nen Grund? Gruß Rainer
Code:
tenum1 = (fRot, fBlau);
tmyclass = class(TPersistent) private Fs1: tenum1; public property s1:tenum1 read Fs1 write Fs1; end; procedure TForm8.FormCreate(Sender: TObject); var context: TRttiContext; aType: TRttiType; aProperty: TRttiProperty; attrib: TCustomAttribute; begin aType:=context.GetType(tmyclass); for aProperty in aType.GetProperties do begin Caption:=caption+aProperty.Name; end; |
AW: RTTI und Enum mit Werten, Bug oder Feature?
Auf die Schnelle gefunden:
![]() |
AW: RTTI und Enum mit Werten, Bug oder Feature?
Sobald auch nur ein Wert explizit definiert wurde
Delphi-Quellcode:
, gibt es in der RTTI keine Namensliste der Werte mehr.
=irgendas
Der "Bug" ist seit Jahrzehnten bekannt, mein Bugfix-Vorschlag wurde abgewiesen ... das ist halt so. [edit] Ein F5 bitte, her Ober. |
AW: RTTI und Enum mit Werten, Bug oder Feature?
Vieleicht hilft dir dieser Blog Artikel weiter
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz