exponenta event banner

Жизненный цикл прослушивателя

Жизненный цикл прослушивателя управления

Существует два способа создания прослушивателей:

  • addlistener создает связь между прослушивателем и исходным объектом события. Объект прослушивателя сохраняется до тех пор, пока он не будет удален, или пока объект события не будет уничтожен. При уничтожении исходного объекта события MATLAB ® автоматически уничтожает объект прослушивателя .

  • listener создает объекты прослушивателя, не связанные с жизненным циклом объекта-источника события. Прослушиватель активен, пока объект прослушивателя остается в области действия и не удаляется явным образом. Поэтому приложение должно поддерживать ссылку на объект прослушивателя, сохраняя дескриптор прослушивателя. Преимущество отсоединения прослушивателя и объектов событий состоит в том, что каждый из них можно определять и уничтожать независимо друг от друга.

Дополнительные сведения см. в разделе Синтаксис событий и прослушивателей.

Временно деактивировать прослушиватели

addlistener возвращает объект прослушивателя, чтобы можно было задать его свойства. Например, можно временно отключить прослушиватель, установив его Enabled свойство для false:

ListenerHandle.Enabled = false;

Чтобы повторно включить прослушиватель, установите Enabled кому true.

ListenerHandle.Enabled = true;

Удаление прослушивателей без возможности восстановления

Запрос delete объект прослушивателя уничтожает его и окончательно удаляет прослушиватель:

delete(ListenerHandle) 

Примечание

Не используйте pack с объектами, определяющими события и прослушиватели. pack приводит к уничтожению всех прослушивателей, определенных для объектов в рабочей области. Сведения о восстановлении прослушивателей при сохранении объектов см. в разделе Восстановление прослушивателей.

Связанные темы