2

我正在创建一个 MATLAB GUI,它需要监听按键信息,然后相应地更新屏幕。如果按键的回调函数实际上可以访问handles对象,这将不是问题,但事实并非如此。有没有办法让这个回调访问handles对象?

这就是我开始我的关键监听器的方式。

set(hObject,'KeyPressFcn',@keyDownListener)

然后我尝试在定义的函数中处理这个

function keyDownListener(src,event)    
    % need access to handles
end

我不得不想象它很简单,但我似乎找不到一个好的答案。提前致谢。

4

2 回答 2

4

我认为您可以执行以下操作:

set(hObject,'KeyPressFcn',{@keyDownListener,handles})

然后将函数定义为:

function keyDownListener(src,event,handles) 
于 2013-07-24T14:44:51.580 回答
2

您只需将附加参数添加到您的 keyDownListener-fcn。有一种特殊的语法可以做到这一点,如下所述:

matlab-callback-function-only-sees-one-parameter-passed-to-it

于 2013-07-24T14:46:05.600 回答