このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
addlistener
クラス: handle
イベント ソースにバインドされたイベント リスナーの作成
構文
el = addlistener(hSource,EventName,callback)
el = addlistener(hSource,PropertyName,EventName,callback)
addlistener(___)
説明
は、ソース オブジェクト el
= addlistener(hSource
,EventName
,callback
)hSource
でトリガーされたときにイベント EventName
のリスナーを作成します。
hSource
が配列である場合、リスナーは配列 hSource
内のどのオブジェクトについても、指定されたイベントに応答します。callback
はコールバック関数を参照する関数ハンドルです。
は、事前定義プロパティ イベントのうちいずれかのリスナーを作成します。事前定義されたプロパティ イベントは 4 種類あります。el
= addlistener(hSource
,PropertyName
,EventName
,callback
)
addlistener(___)
は、ハンドルなしでリスナー オブジェクトを作成します。この構文は、前述の任意の入力構文で使用できます。
イベント名 | イベントが発生する時点 |
---|---|
PreSet | プロパティの set アクセス メソッドを呼び出す前の、プロパティ値が設定される直前 |
PostSet | プロパティ値が設定された直後 |
PreGet | プロパティの get アクセス メソッドを呼び出す前の、プロパティ値のクエリが処理される直前 |
PostGet | プロパティ値がクエリに返された直後 |
入力引数
出力引数
例
ヒント
リスナーのハンドルを含む変数 (
el
など) の再定義やクリアでは、リスナーは削除されません。イベント オブジェクト (hSource
) にはまだ、event.listener
オブジェクトへの参照があります。addlistener
は、リスナーのライフサイクルをイベントのソースであるオブジェクトに関連付けます。リスナーはイベント ソースのライフサイクルにバインドされますが、次の場合はイベント ソースの破棄後も残ります。
リスナーへの 1 つ以上の参照が他の変数内にある (作成時に指定した場合はリスナーのハンドルを含む)。
リスナーが他のイベント ソースに関連付けられている。
リスナーを削除するには、
addlistener
により返されるリスナー オブジェクトを削除します。以下に例を示します。delete(el)
これは、ハンドル クラスの delete メソッドを呼び出して、ワークスペースからオブジェクトを削除し、リスナーを削除します。
イベント オブジェクトに関連付けられていないリスナーを定義するには、
event.listener
コンストラクターを使用して、直接リスナーを作成します。
代替方法
リスナー オブジェクトのライフサイクルをソース オブジェクトのライフサイクルから独立させる必要がある場合は、listener
を使用してリスナーを作成します。
バージョン履歴
R2008a で導入