リスナーのライフサイクル
リスナー ライフサイクルの制御
リスナーを作成するには 2 つの方法があります。
addlistener
は、リスナーとイベント ソース オブジェクト間の結合を作成します。リスナー オブジェクトは、削除されるか、またはイベント オブジェクトが破棄されるまで存続します。イベント ソース オブジェクトが破棄されると、MATLAB® はリスナー オブジェクトを自動的に破棄します。listener
は、イベント ソース オブジェクトのライフサイクルに結合されていないリスナー オブジェクトを作成します。リスナー オブジェクトがスコープ内にとどまり、明示的に削除されない限り、リスナーはアクティブです。このため、アプリケーションは、リスナー ハンドルを保存することにより、リスナー オブジェクトへの参照を保持しなければなりません。リスナー オブジェクトとイベント オブジェクトの結合解除の利点は、それぞれを独立して定義し、破棄できることです。
詳細については、イベントとリスナーの構文を参照してください。
リスナーの一時的な非アクティブ化
addlistener
メソッドは、リスナー オブジェクトを返すので、そのプロパティを設定することができます。たとえば、Enabled
プロパティを false
に設定することによって、リスナーを一時的に無効にできます。
ListenerHandle.Enabled = false;
リスナーを再度有効にするために、Enabled
を true
に設定します。
ListenerHandle.Enabled = true;
リスナーの完全な削除
リスナー オブジェクトに対して delete
を呼び出すと、リスナー オブジェクトを破棄してリスナーを完全に削除します。
delete(ListenerHandle)