ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

イベント

イベントの定義とトリガー、イベントに応答するリスナーの作成

イベントは、オブジェクトに関係する変更や動作が発生したときにブロードキャストされる通知です。リスナーは、特定のイベントが発生したときに実行する関数を定義します。クラスでは、イベントを定義およびトリガーできます。MATLAB® は、コードがオブジェクトのプロパティにアクセスしたときに、事前定義されたイベントをトリガーできます。

関数

eventsイベントの名前
handle.notifyイベントの発生をリスナーに通知
handle.addlistenerイベント ソースにバインドされたイベント リスナーの作成
handle.listenerイベント ソースにバインドされないイベント リスナーの作成
event.hasListenerイベントのリスナーが存在するかどうかを判定

クラス

event.EventDataイベント データの基底クラス
event.listenerリスナー オブジェクトを定義するクラス
event.PropertyEventプロパティ イベントのデータ
event.proplistenerプロパティ イベントのリスナー オブジェクトの定義

トピック

イベントとリスナー

イベントとリスナーの概要

イベントとリスナーを使用して、メッセージの送信とメッセージへの応答を行います。

イベントとリスナーの概念

イベントにより、登録されているすべてのリスナーに通知がブロードキャストされ、イベント特有のデータがリスナー コールバック関数に渡されます。

イベントとリスナーの構文

これらのコード例では、イベントとリスナーを定義する方法を説明します。

イベント アクセス リスト

特定のイベントの通知を受けることができるクラスのリストを指定します。

イベントの属性

イベント属性を設定してイベントへのアクセスを制御します。

リスナーの実装

リスナー コールバックの構文

関数ハンドルを使用してリスナー コールバックを指定します。

コールバックの実行

リスナー コールバックでエラーが発生しても、他のリスナーの実行は妨げられません。ただし、リスナーの実行順序は定義されていません。

リスナーのライフサイクル

MATLAB はリスナーのライフサイクルを管理します。リスナーのライフサイクルをよりうまく制御できるように、コンストラクターは handle.addlistener ではなく handle.listener メソッドを使用してリスナー オブジェクトを作成します。

イベントにリスナーがあるかどうかの判定

特定のイベントやイベント ソースに対して定義されたリスナーがあるかどうかを判定することができます。

プロパティ リスナー

プロパティ値変更のリスニング

MATLAB はすべてのプロパティに対して PreSet、PostSet、PreGet、PostGet の各イベントを定義します。

プロパティ値が変化しない場合の代入

プロパティの AbortSet 属性を使用して、値が変化しないときにはプロパティ イベントがトリガーされないようにします。

イベントとリスナーの例

カスタム イベント データの定義

イベントがトリガーされる際に MATLAB によってリスナーに渡されるイベント データを再定義します。

プロパティ値の変更の観測

リスナーは事前定義されたプロパティ イベントを使用してプロパティ値の変更に応答することができます。

プロパティ set リスナーの実装

リスナーは MATLAB が値を代入する前または後にプロパティ値の変更に応答することができます。

イベントとリスナーを使用するための手法

この例では、コンテキスト メニューを使用してリスナーの実行を有効および無効にする方法を説明します。

リスナーの復元

プロパティ リスナーを loadobj メソッドから復元することができます。