表示: Delphi
C++
表示設定
System.TypInfo.SetPropValue
提供:XE2 API Documentation
Delphi
procedure SetPropValue(Instance: TObject; const PropName: string; const Value: Variant); procedure SetPropValue(Instance: TObject; PropInfo: PPropInfo; const Value: Variant);
C++
extern PACKAGE void __fastcall SetPropValue(System::TObject* Instance, const System::UnicodeString PropName, const System::Variant &Value)/* overload */;
プロパティ
| 種類 | 可視性 | ソース | ユニット | 親 |
|---|---|---|---|---|
procedure function |
public | System.TypInfo.pas System.TypInfo.hpp |
System.TypInfo | System.TypInfo |
説明
バリアント値を使ってコンポーネント プロパティの値を設定します。
SetPropValue は、Delphi の RTTI(Run Time Type Information:実行時型情報)を利用して、バリアント値によりコンポーネントのプロパティの値を設定します。
この関数の 1 つの形式では、オブジェクト インスタンス(Instance)のプロパティを PropInfo レコードで定義します。GetPropInfo および GetPropList を使うと、このようなレコードを取得することができます。
この関数のもう 1 つの形式では、プロパティの名前、PropName を明示的に指定します。
関数のいずれの形式でも、プロパティの新しい値を Value に定義します。バリアントを使って行ってよいのは、確実なプロパティの割り当てだけです。通常、これを使うのは、別のプロパティから GetPropValue を使用したときです。
この関数の本質的な価値は、プロパティ名をハード コーディングしなくてもコンポーネント プロパティを設定できる点にあります。これにより、実行時にビジュアル コンポーネントの処理をまとめて行うことができます。
メモ: 指定したプロパティが存在しない、またはパブリッシュされたプロパティでない場合には、EPropertyError 例外が送出されます。