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
这个话题有帮助吗?