hObject--就是当前要执行Callback的元件(例如,按钮等)
eventdata--这是Matlab保留的一个参数。
handles--就是当前figure的句柄了。
所以,如果我们想调用其他函数的回调函数的话,我们就要用到一个叫feval的函数,它主要是用来执行一个函数。
假如现在figure上面有两个按钮,它们的tag属性分别设置为pb1和pb2。而pb1执行的命令是:msgbox('You pressed
pushbatton1','info'); 而我们想pb2能够执行同样的功能,那么就可以如下这么写pb2的程序:
f=@pb1_Callback; %获得pb1的函数句柄
feval(f,handles.pb1,eventdata,handles) %执行pb1的程序
通过以上的方法我们就实现了一个回调函数调用另一个回调函数,这个主要用在如果有两个控件执行同样的命令时,不用去写同样的命令。但是还有一点,如果你
有很多回调函数要执行的是另一个回调函数中的一部分命令的话,那么最好把那部分命令抽出来写成一个函数,但是函数的输入参数要是
hObject,eventdata和handles。只有这样在这个函数中你才能引用handles句柄。