Matlab GUI,在回调函数之间共享数据

时间:2014-10-06 21:53:03

标签: matlab user-interface listbox

我花了很长时间才做到这一点。我可以搜索很多教程,但是无论如何我都做不到,所以我需要一些帮助,不得不在这里提问。在GUI中,有两个列表框和两个按钮。我点击pushbutton2然后我们得到数据。现在在函数pushbutton1_callback中,我需要使用数据。我不想使用'Global',因为它不是一个好方法。非常感谢。

function pushbutton1_Callback(hObject, eventdata, handles)

% I need to get  data from function pushbutton2

function pushbutton2_Callback(hObject, eventdata, handles)

data = get(handles.listbox2,'String')

1 个答案:

答案 0 :(得分:1)

使用GUI的句柄结构存储您想要的所有数据。看看here

function pushbutton2_Callback(hObject, eventdata, handles)

handles.data = get(handles.listbox2,'String') % Store the data directly in  the structure.

guidata(handles,hObject); %// update the structure. Important!

function pushbutton1_Callback(hObject, eventdata, handles)

%// Here use the data as you wish:

DatatoUse = handles.data;

你很高兴。