文档

registerevent

在运行时为COM对象事件关联事件处理程序

语法

registerevent (h, eventhandler)

描述

registerevent (h, eventhandler)用相应的事件注册事件处理程序例程。的eventhandler参数可以是指定事件处理函数名称的字符向量,也可以是映射到该函数的函数句柄。中使用的字符向量eventhandler参数不区分大小写。

COM函数在Microsoft上可用®窗户®系统只。

例子

在MATLAB中显示事件®样品控制:

图(f =“位置”,[100 200 200 200]);h = actxcontrol (“mwsamp.mwsampctrl.2”,[0 0 200 200],f);事件(h)
Click() DblClick = void DblClick() MouseDown = void MouseDown(int16 Button, int16 Shift, Variant x, Variant y) Event_Args = void Event_Args(int16 typeshort, int32 typelong, double typedouble, string typestring, bool typebool)

MATLAB显示与控件实例相关的所有事件。

用相同的事件处理程序例程注册所有事件,sampev

registerevent (h,“sampev”) eventlistener (h)
ans = 'Click' 'sampev' 'DblClick' 'sampev' 'MouseDown' 'sampev' 'Event_Args' 'sampev'

注册个人事件:

取消已存在事件的注册unregisterallevents (h)%注册特定事件registerevent (h, {“点击”“myclick”“双击”“my2click”}) eventlistener (h)
Ans = 'click' 'myclick' 'dblclick' 'my2click'

使用函数句柄注册事件(@sampev)而不是函数名:

h = actxcontrol (“mwsamp.mwsampctrl.2”,[0 0 200 200]);registerevent (h, @sampev)

之前介绍过的R2006a

这个话题有帮助吗?