События и прослушиватели

Определение и Инициирование событий

Чтобы задать событие, объявите имя для события в блоке 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 передает указатель объекта, генерирующего данные о событиях и данные о событиях к функциям обратного вызова. Чтобы создать прослушиватель, используйте метод addlistener класса handle.

addlistener(event_obj,'StateChange',@myCallback)

Чтобы управлять жизненным циклом прослушивателя, используйте конструктора event.listener, чтобы создать объект прослушивателя.

Смотрите также

| |

Похожие темы

Была ли эта тема полезной?