API:DesignEditors.TPropertyEditor
Delphi
TPropertyEditor = class(TBasePropertyEditor, IProperty, IPropertyKind, IProperty70)
C++
class PASCALIMPLEMENTATION TPropertyEditor : public Designintf::TBasePropertyEditor
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | DesignEditors.pas DesignEditors.hpp |
DesignEditors | DesignEditors |
説明
TBasePropertyEditor は,すべてのプロパティエディタの基本クラスです。
DesignEditors.TPropertyEditor は DesignIntf.TBasePropertyEditor を継承しています。以下の内容はすべて DesignIntf.TBasePropertyEditor を参照しています。
TBasePropertyEditor は,すべてのプロパティエディタの基本クラスです。
新しいコンポーネントクラスで特殊なプロパティ用のプロパティエディタを定義するときは,TBasePropertyEditor またはその下位オブジェクトを基本クラスとして使用します。すべてのプロパティエディタは,TBasePropertyEditor から派生し,さらに IProperty インターフェースをサポートしなければなりません。
TBasePropertyEditor は,有用と判断した情報をプロパティエディタに通知するための,オブジェクトインスペクタから呼び出される 2 つの抽象(純粋仮想)プロテクトメソッドを定義します。TBasePropertyEditor は,IProperty インターフェースのサポートをまったく実装していません。このサポートは下位クラスによって提供される必要があります。たとえば,TBasePropertyEditor には,直接の下位オブジェクト TPropertyEditor があります。この下位オブジェクトは,異なる型のプロパティ値のフェッチをサポートし,IProperty インターフェースのデフォルトの実装を提供します。通常,コンポーネント開発者は,新しいプロパティエディタを定義するときには,TPropertyEditor を基本クラスとして使用します。プロパティエディタを直接 TBasePropertyEditor から派生させて,すべてのメソッドが特定のプロパティに対して不要な型を処理するオーバーヘッドを回避することもできます。
プロパティエディタは,指定された型のすべてのプロパティ,または特定のコンポーネントクラスの特定のプロパティと関連付けることができます。プロパティエディタとプロパティを関連付けるには,RegisterPropertyEditor を呼び出します。プロパティエディタを登録すると,そのエディタは,ユーザーがオブジェクトインスペクタを使ってプロパティを編集しようとしたときに表示されます。