我们知道如何在单击按钮时编写Matlab来执行某些操作,即:
button= uicontrol('Style','pushbutton','String','click me',...
'Position',[260 80 60 20],...
'Callback','disp ('' The button is clicked'')');
因此,在回调'之后放置的代码或功能。按下并释放该按钮时将被调用。(因此只有在释放按钮时才会调用处理程序)
但是,只要按下按钮但尚未释放按钮,我就想激活一些代码。我怎么能这样做?
答案 0 :(得分:-1)
您必须对“ButtonDownFcn”属性使用回调函数。来自here:“
<强> ButtonDownFcn 强>
字符串或函数句柄(GUIDE设置此属性)
按下按钮回调例程。一个可以执行的回调例程 当指针在a或on附近时按下鼠标按钮 uicontrol。具体做法是:
如果uicontrol的Enable属性设置为on,则为ButtonDownFcn 单击鼠标右键或鼠标左键时执行回调 uicontrol周围的5像素边框或单击鼠标右键时 控件本身上的按钮。
如果uicontrol的Enable属性设置为inactive或off,则为 单击鼠标右键或左键时会执行ButtonDownFcn 在5像素边框或控件本身。
这对于实现以交互方式修改的操作非常有用 控制对象属性,例如大小和位置 单击(例如,使用selectmoveresize)。
将此例程定义为一个有效的MATLAB表达式或字符串 代码文件的名称。表达式在MATLAB中执行 工作区。
要在GUIDE中添加ButtonDownFcn回调,请选择View Callbacks from 在Layout Editor View菜单中,然后选择ButtonDownFcn。指南集 此属性为相应的字符串并将回调添加到 下次保存GUI时的代码文件。或者,您可以设置 此属性为字符串%自动。下次你保存 GUI,GUIDE将此属性设置为适当的字符串并添加 回调代码文件。
使用Callback属性指定该回调例程 激活启用的uicontrol时执行(例如,单击推送 按钮)。