System.TypInfo.GetPropInfo

Aus Appmethod Libraries
Wechseln zu: Navigation, Suche

Object Pascal

function GetPropInfo(TypeInfo: PTypeInfo; const PropName: string): PPropInfo;
function GetPropInfo(TypeInfo: PTypeInfo; const PropName: string; AKinds: TTypeKinds): PPropInfo;
function GetPropInfo(Instance: TObject; const PropName: string; AKinds: TTypeKinds): PPropInfo;
function GetPropInfo(AClass: TClass; const PropName: string; AKinds: TTypeKinds): PPropInfo;

C++

extern DELPHI_PACKAGE PPropInfo __fastcall GetPropInfo(PTypeInfo TypeInfo, const System::UnicodeString PropName)/* overload */;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
System.TypInfo.pas
System.TypInfo.hpp
System.TypInfo System.TypInfo

Beschreibung

Ruft Informationen über eine Komponenteneigenschaft ab.

GetPropInfo verwendet die RTTI (Run Time Type Information) von Object Pascal, um einen Zeiger auf einen Eigenschaftsinformations-Record für eine Komponente abzurufen.

In der ersten Form dieser Funktion gibt TypeInfo den Komponententyp an, dessen Eigenschaft abgerufen werden soll. PropName gibt den Eigenschaftsamen als String an. Sie können optional eine AKinds-Menge mit TTypeKind-Eigenschaftswerttypen festlegen, zu der die Eigenschaft gehören muss.

Die zweite Form der Funktion ist der ersten ähnlich, verwendet aber AClass anstelle von TypeInfo zum Festlegen des Komponententyps. Der Wert AKinds ist hier erforderlich.

Die letzte Form der Funktion entspricht der zweiten und verwendet Instance zum Festlegen einer Komponenteninstanz.

In allen Formen der Funktion ist der zurückgegebene Wert ein Zeiger auf einen TPropInfo-Wert. Dadurch kann eine Fülle von Daten über die untersuchte Eigenschaft zur Laufzeit abgerufen werden. Auf diese Weise erzielen Sie eine elegantere Komponentenverarbeitung als mit hart-codierten Komponentennamen/-eigenschaften.

Anmerkung:  Wenn die angegebene Eigenschaft nicht vorhanden ist, wird ein nil-Zeiger zurückgegeben.

Siehe auch