System.Classes.TComponent.ReferenceInterface
Delphi
function ReferenceInterface(const I: IInterface; Operation: TOperation): Boolean;
C++
bool __fastcall ReferenceInterface(const System::_di_IInterface I, TOperation Operation);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | System.Classes.pas System.Classes.hpp |
System.Classes | TComponent |
説明
指定したインターフェースの実装オブジェクトが破棄された場合に,当該コンポーネントに通知する内部リンクを確立または削除します。
コンポーネント開発者は,ReferenceInterface メソッドを使用して,指定したインターフェースを実装するオブジェクトが破棄された場合に,値がそれらのインターフェースになっているプロパティに確実に通知されるようにします。この通知は,値がインターフェースであり,フォームファイル内のコンポーネントとともに保存されるプロパティ(つまり,パブリッシュプロパティとして存続しているプロパティ)について実施されなければなりません。
I パラメータは,目的のパブリッシュプロパティの値であるインターフェースポインタです。
Operation パラメータは,インターフェースの実装オブジェクトへの通知リンクを確立するか(opInsert)または削除するか(opRemove)を示します。
通知リンクの確立または削除に成功した場合,ReferenceInterface メソッドは true を返します。Operation パラメータが opInsert に設定された状態で呼び出されたときに,ReferenceInterface メソッドが false を返した場合,指定されたインターフェースはパブリッシュプロパティの値として格納されません。
メモ: false は必ずしもエラーを示しているとは限りません。単にインターフェースをプロパティのストリームシステムに格納できないことを示しているだけの場合もあります。たとえば,指定されたインターフェースがコンポーネントの存続期間に依存せず,実際の参照カウントを使用する場合,ReferenceInterface メソッドは false を返します。