Events are notices broadcast when some change or action occurs involving an object. Listeners define functions that execute when specific events occur. Classes can define and trigger events. MATLAB® can trigger predefined events when code accesses object properties.
events | Event names |
notify | Notify listeners that event is occurring |
addlistener | Create event listener bound to event source |
listener | Create event listener without binding to event source |
event.hasListener | Determine if listeners exist for event |
event.EventData | Base class for event data |
event.ClassInstanceEvent | Event data for InstanceCreated and InstanceDestroyed events |
event.listener | Class defining listener objects |
event.PropertyEvent | Data for property events |
event.proplistener | Define listener object for property events |
Use events and listeners to send and respond to messages.
Events broadcast notifications to all registered listener and pass event-specific data to listener callback functions.
These code examples show how to define events and listeners
Specify a list of classes that can be notified of a specific event.
Control access to events by setting event attributes.
Specify listener callbacks using function handles.
Errors in listener callbacks do not prevent execution of other listeners. However, the order of listener execution is not defined.
MATLAB manages the lifecycle of listeners. For greater control of listener lifecycle, constructor listener objects using the listener
method instead of addlistener
.
Determine If Event Has Listeners
You can determine if there are listeners defined for a specific event and event source.
Listen for Changes to Property Values
MATLAB defines pre and post set and get events for all properties.
Assignment When Property Value Is Unchanged
Prevent the triggering of property events when values do not change using the property AbortSet
attribute.
Redefine the event data that MATLAB passes to listeners when an event is triggered.
Observe Changes to Property Values
Listeners can respond to changes in the value of properties using predefined property events.
Implement Property Set Listener
Listeners can respond to changes in property values before or after MATLAB assigns the value.
Techniques for Using Events and Listeners
This example shows how to enable and disable listener execution using context menus.
You can restore property listeners from the loadobj
method.