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

イベントとリスナー

イベントの定義とトリガー

イベントを定義するには、events ブロックでイベント名を宣言します。handle クラスの notify メソッドを使用してイベントをトリガーします。イベントを定義できるのは、handle クラスから派生したクラスのみです。

たとえば、MyClass クラスでは次のことが行われます。

  • handle をサブクラス化します。

  • StateChange という名前のイベントを定義します。

  • 継承された notify メソッドを upDateUI メソッドで使用してイベントをトリガーします。

classdef MyClass < handle 
   events 
      StateChange
   end
   ...
   methods
      function upDateUI(obj)
         ...
         notify(obj,'StateChange');
      end
   end
end

イベントのリスニング

任意の数のオブジェクトで StateChange イベントをリッスンすることができます。notify が実行されるとき、MATLAB® は登録されているすべてのリスナー コールバックを呼び出します。MATLAB は、イベントとイベント データを生成するオブジェクトのハンドルをコールバック関数に渡します。リスナーを作成するには、handle クラスの addlistener メソッドを使用します。

addlistener(event_obj,'StateChange',@myCallback)

リスナーのライフサイクルを制御するには、event.listener コンストラクターを使用してリスナー オブジェクトを作成します。

参考

| |

関連するトピック