このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
イベントは,オブジェクトに関係する変更や動作が発生したときにブロードキャストされる通知です。リスナーは,特定のイベントが発生したときに実行する関数を定義します。クラスでは,イベントを定義およびトリガーできます。MATLAB®は,コードがオブジェクトのプロパティにアクセスしたときに,事前定義されたイベントをトリガーできます。
事件 |
イベントの名前 |
通知 |
イベントの発生をリスナーに通知 |
addlistener |
イベントソースにバインドされたイベントリスナーの作成 |
侦听器 |
イベントソースにバインドされないイベントリスナーの作成 |
event.hasListener |
イベントのリスナーが存在するかどうかを判定 |
事件。EventData |
イベントデータの基底クラス |
事件。ClassInstanceEvent |
InstanceCreated イベントとInstanceDestroyed イベントのイベントデータ |
event.listener |
リスナーオブジェクトを定義するクラス |
事件。PropertyEvent |
プロパティイベントのデータ |
event.proplistener |
プロパティイベントのリスナーオブジェクトの定義 |
イベントとリスナーを使用して,メッセージの送信とメッセージへの応答を行います。
イベントにより,登録されているすべてのリスナーに通知がブロードキャストされ,イベント特有のデータがリスナーコールバック関数に渡されます。
これらのコード例では,イベントとリスナーを定義する方法を説明します。
特定のイベントの通知を受けることができるクラスのリストを指定します。
イベント属性を設定してイベントへのアクセスを制御します。
関数ハンドルを使用してリスナーコールバックを指定します。
リスナーコールバックでエラーが発生しても,他のリスナーの実行は妨げられません。ただし,リスナーの実行順序は定義されていません。
MATLABはリスナーのライフサイクルを管理します。リスナーのライフサイクルをよりうまく制御できるように、コンストラクターはaddlistener
ではなく侦听器
メソッドを使用してリスナーオブジェクトを作成します。
特定のイベントやイベントソースに対して定義されたリスナーがあるかどうかを判定することができます。
MATLABはすべてのプロパティに対して预设,PostSet, PreGet, PostGetの各イベントを定義します。
プロパティのAbortSet
属性を使用して,値が変化しないときにはプロパティイベントがトリガーされないようにします。
イベントがトリガーされる際にMATLABによってリスナーに渡されるイベントデータを再定義します。
リスナーは事前定義されたプロパティイベントを使用してプロパティ値の変更に応答することができます。
リスナーはMATLABが値を代入する前または後にプロパティ値の変更に応答することができます。
この例では,コンテキストメニューを使用してリスナーの実行を有効および無効にする方法を説明します。
プロパティリスナーをloadobj
メソッドから復元することができます。