主要内容

听众

类:手柄

创建不绑定到事件源的事件侦听器

语法

eL =侦听器(hSource EventName,回调)
eL=侦听器(hSource、PropertyName、EventName、回调)

描述

埃尔=听众(hSource,事件名,回调)为名为的事件创建侦听器事件名.hSource是作为事件源的句柄对象。回调是一个函数句柄,可以通过MATLAB实现®触发事件时调用。

如果hSource是事件源对象的数组,则监听器对数组中未处于删除状态的任何对象响应指定的事件。

埃尔=听众(hSource,属性名,事件名,回调)为其中一个预定义属性事件创建侦听器。有四个预定义属性事件:

事件名称 事件发生
预设

在设置属性值之前,调用其set访问方法之前

邮戳

设置属性值后立即执行

怀孕

在服务属性值查询之前,在调用其get访问方法之前

PostGet

在将属性值返回到查询之后立即

输入参数

全部展开

作为事件源的句柄对象,指定为单个对象或对象数组。

源对象上触发的事件的名称,指定为大小写敏感的带引号的文本。对于属性事件,事件名称是四个预定义的属性事件之一。

数据类型:烧焦|一串

属性事件触发监听器的属性的名称,指定为以下值之一:

  • 字符向量或字符向量的单元格数组,其中每个字符向量都是为中的对象定义的特性的名称hSource

  • 字符串或字符串数组,其中每个字符串都是为中的对象定义的属性的名称hSource

  • 标量元属性对象或数组元属性中为对象定义的属性对应的对象hSource

只有当时,才能将监听器附加到动态属性的属性事件hSource是标量。如果hSource是非标量,则属性必须属于hSource并且不能包含动态属性(这不是类定义的一部分)。

定义源属性的类必须设置可观察可观测的属性属性,使您能够侦听属性事件。

指定为函数句柄的侦听器回调

数据类型:功能手柄

输出参数

全部展开

侦听器对象,作为句柄返回给event.listener或者一个event.proplistener对象。

例子

全部展开

为对象创建属性侦听器颜色图形的性质图形窗户。

图=图;propListener=监听器(图,“颜色”,“PostSet”,@(src,evnt)显示(“颜色改变”));

设置颜色财产黄色的。设置属性将触发邮戳图上的属性事件。事件源对象是句柄引用的特定图无花果.

设置(图,“颜色”,“黄色”)

删除侦听器对象。

删除(propListener)

提示

侦听器生命周期

要删除侦听器,请删除由返回的侦听器对象听众。例如,此语句调用句柄类删除方法删除侦听器。

删除(el)

对侦听器对象调用delete会破坏侦听器,因此,事件不再导致回调函数执行。

这个听众方法不会将侦听器的生命周期绑定到作为事件源的对象。销毁事件源对象不会影响侦听器对象的生命周期。

属性创建的侦听器必须显式销毁听众方法独立于源对象。对侦听器变量调用handle delete方法(例如,删除(el))显式销毁侦听器。如果没有其他引用,重新定义或清除包含侦听器的变量可以删除侦听器。要将侦听器的生命周期绑定到事件源对象的生命周期,请使用addlistener.

选择

使用addlistener当您希望MATLAB管理侦听器生命周期时。

在R2017b中引入