是否可以在WindowButtonMotionFcn中使用多个回调?

问题描述

| 我创建了一个类,该类为构造图中的功能添加了功能。此类为
WindowMouseMotion
事件创建一个侦听器;但是,要触发此事件,我必须为该图形的
WindowButtonMotionFcn
属性添加一个虚拟回调函数。我首先检查此属性是否已填充。如果不是,则将其设置为不执行任何操作的虚拟回调函数。 无需检查该属性是否已设置,我可以简单地将此虚拟回调添加到任何现有回调中吗?回调属性可以调用多个函数吗? 编辑 当使用
handle.listener
方法处理下面给出的
WindowButtonMotionEvent
事件时,请确保使用
eventdata.CurrentPoint
访问当前鼠标位置。在以这种方式处理
WindowButtonMotionEvent
事件之前,该图的
CurrentPoint
属性不会得到更新。     

解决方法

相关文章可以在Yair Altman的Undocumented MATLAB博客上找到,来自客座博客Matt Mattaker。您所暗示的是回调链接,并引用了博客:   坦白地说,已经编写了代码   以前处理回调   链接,我宁愿戳自己   用叉子在眼里! 幸运的是,该文章中似乎有替代解决方案。使用此处发布的代码段,我能够在不设置ѭ7的情况下执行鼠标移动执行的功能。我向当前图形添加了一个侦听器,如下所示:
myListener = handle.listener(gcf,\'WindowButtonMotionEvent\',...
                             @(hSource,eventData) disp(\'hello\'));
当我在窗口中移动鼠标时,显示消息“ 9”。     ,您可以通过cellfun和feval来做到这一点,如Mathworks网站上所回答:http://www.mathworks.com/matlabcentral/answers/10664-multiple-callback-functions
obj = uicontrol(...,\'style\',\'popupmenu\',...
  \'Callback\',@(h,e)(cellfun(@(x)feval(x,h,e),...
   {@(h,e)this.myfunc(h),...
   @(h,e)this.myfunc2(h),e)this.myfunc2(h)}))
请注意,回调使用cellfun设置为匿名函数,以评估每个处理程序。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...