![]() |
AW: Geerbter Getter für lokale Objekt-Konstante?
Ihr führt mir immer wieder den Unterschied zwischen einem Amateur (= mir) und den Profis (= IHR) vor Augen. Habe stets viel von Euch gelernt: Danke!
Gruß, Andreas |
AW: Geerbter Getter für lokale Objekt-Konstante?
Sorry, ich bin schon wieder...
Erst soeben ist mir aufgefallen, daß bei der Zuweisung
Delphi-Quellcode:
der String-Teil des Attributs „auf dem Weg“ verloren geht und in der Variablen attr immer ein Leerstring steht. Obwohl das Result der
attr := FuncInfoAttribute.FindAttribute(ClassType);
Delphi-Quellcode:
korrekterweise den String und den Integer enthält. In den Gettern kommt lediglich der Integer an, der String ist jedoch verschwunden. Kann das etwa mit dem auskommentierten
class function FuncInfoAttribute.FindAttribute(Source: TClass): FuncInfoAttribute;
Delphi-Quellcode:
zusammenhängen?
TRttiContext.KeepContext;
Ich bin etwas ratlos... Gruß, Andreas |
AW: Geerbter Getter für lokale Objekt-Konstante?
Zitat:
Als Workaround kannst du eine globale Variable vom Typ TRTTIContext anlegen. Alternativ auch als class var in einem class helper, dann braucht man auch keinen lokalen TRTTIContext mehr in FindAttribute:
Delphi-Quellcode:
type
TCustomAttributeHelper = class helper for TCustomAttribute public class var Context: TRttiContext; end; |
AW: Geerbter Getter für lokale Objekt-Konstante?
Danke Uwe für Deine schnelle Hilfe!
Die Globale Variable
Delphi-Quellcode:
funktioniert einwandfrei!
VAR
Context: TRttiContext; Viele Grüße, Andreas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:26 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