我是 MATLAB GUI 编程的新手,所以我的问题与此有关。
假设我使用 GUIDE 创建了一个 GUI。在创建函数中
MyGUI_OpeningFcn(hObject, eventdata, handles, varargin)
我调用另一个函数,
SamplingRate_Callback(handles.SamplingRate, eventdata, handles)
定义为
function SamplingRate_Callback(hObject, eventdata, handles)
SamplingRate_Callback 设置了一些变量,
handles.a = 1;
handles.b = 2;
handles.c = 3;
handles
结构在函数内正确更新SamplingRate_Callback
。我遇到的问题是,除非我将功能更改为
function handles = SamplingRate_Callback(hObject, eventdata, handles),
我无法将数据返回给调用函数,MyGUI_OpeningFcn
. 我试过使用guidata(gcf, handles)
and guidata(hObject, handles)
,但都不起作用。
你能解释一下这个问题吗?
另外,我不确定何时使用guidata(gcf, handles)
vs. guidata(hObject, handles)
。
谢谢你的帮助!