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