unregisterallevents

Unregister all event handlers for COM object event at run-time

Syntax

h.unregisterallevents
unregisterallevents(h)

Description

h.unregisterallevents unregisters all events that have previously been registered with COM object, h. After calling unregisterallevents, the object no longer responds to any events until you register them again using the registerevent function.

unregisterallevents(h) is an alternate syntax for the same operation.

Examples

mwsamp Control Example

Create an mwsamp control, registering three events and their respective handler routines. Use the eventlisteners function to see the event handler used by each event:

f = figure ('position', [100 200 200 200]);
h = actxcontrol('mwsamp.mwsampctrl.2', ...
    [0 0 200 200], f, ... 
    {'Click' 'myclick'; 'DblClick' 'my2click'; ... 
    'MouseDown' 'mymoused'});

h.eventlisteners
ans = 
    'click'        'myclick' 
    'dblclick'     'my2click'
    'mousedown'    'mymoused'

Unregister all of these events at once with unregisterallevents. Now, calling eventlisteners returns an empty cell array, indicating that there are no longer any events registered with the control:

h.unregisterallevents;
h.eventlisteners
ans = 
     {}

To unregister specific events, use the unregisterevent function. First, create the control and register three events:

f = figure ('position', [100 200 200 200]);
h = actxcontrol('mwsamp.mwsampctrl.2', [0 0 200 200], f,...
    {'Click' 'myclick'; 'DblClick' 'my2click'; ... 
    'MouseDown' 'mymoused'});

Next, unregister two of the three events. The mousedown event remains registered:

h.unregisterevent({'click' 'myclick'; ...
                   'dblclick' 'my2click'});
h.eventlisteners
ans = 
    'mousedown'    'mymoused'

Workbook Events Example

Create a Microsoft® Excel® Workbook object and register some events.

myApp = actxserver('Excel.Application');
wbs = myApp.Workbooks;
wb = wbs.Add;
wb.registerevent({'Activate' 'EvtActivateHndlr'; ...
                  'Deactivate' 'EvtDeactivateHndlr'})
wb.eventlisteners

MATLAB® shows the events registered to their corresponding event handlers.

ans = 

    'Activate'      'EvtActivateHndlr'  
    'Deactivate'    'EvtDeactivateHndlr'

Use unregisterallevents to clear the events.

wb.unregisterallevents
wb.eventlisteners

MATLAB displays an empty cell array, showing that no events are registered.

ans = 

     {}

See Also

events (COM), eventlisteners, registerevent, unregisterevent, isevent

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS