System.TypInfo.TPropInfo
Delphi
TPropInfo = packed record
PropType: PPTypeInfo;
GetProc: Pointer;
SetProc: Pointer;
StoredProc: Pointer;
Index: Integer;
Default: Integer;
NameIndex: SmallInt;
Name: TSymbolName;
function NameFld: TTypeInfoFieldAccessor; inline;
function Tail: PPropInfo; inline;
end;
C++
struct DECLSPEC_DRECORD TPropInfo
{
public:
PTypeInfo *PropType;
void *GetProc;
void *SetProc;
void *StoredProc;
int Index;
int Default;
short NameIndex;
TSymbolName Name;
TTypeInfoFieldAccessor __fastcall NameFld(void);
PPropInfo __fastcall Tail(void);
};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
record struct |
public | System.TypInfo.pas System.TypInfo.hpp |
System.TypInfo | System.TypInfo |
説明
TPropInfo は、コンポーネント プロパティの型情報のレコードです。
TPropInfo が使われるのは、主に、GetPropInfo を呼び出した結果を保持するためです。コンポーネント プロパティについてのメタ詳細を Delphi の RTTI(Run Time Type Information:実行時型情報)メカニズムの一部として提供するため、実行時のコンポーネント プロパティ処理が可能になります。これにより、必要以上に値をハード コーディングすることなく、より汎用のコンポーネント処理を行うことができます。
TPropInfo のフィールドには以下の意味があります。
フィールド | 意味 |
---|---|
PropType |
プロパティの型に関する情報を提供するデータ構造へのポインタです。 |
GetProc |
コンポーネント プロパティの値を取得するメソッドへのメソッド ポインタです。 |
SetProc |
コンポーネント プロパティの値を設定するメソッドへのメソッド ポインタです。 |
Index |
プロパティのインデックスです。インデックス付きのプロパティに対して GetProc メソッドおよび SetProc メソッドを呼び出す際のパラメータとして使われます。 |
Default |
プロパティのデフォルト値です。 |
NameIndex |
Name フィールド内のプロパティ名の開始位置を示すオフセットです。 |
Name |
限定子付きのプロパティ名です。 |