使用句柄在MATLAB GUI中的函数之间传递变量

时间:2015-04-20 05:16:47

标签: matlab

我对MATLAB比较陌生,所以如果这是一个相当基本的问题请原谅我。我试图了解如何操作变量并在GUI中的函数之间传递结果。

如果我使用GUIDE界面设置GUI,我会得到几个功能。当我点击一个按钮,保存一个变量,然后在另一个函数中使用该变量时,我想做一个特定的动作。

function pushbutton1_Callback(hObject, eventdata, handles)
     handles.MyData = 7;

现在,由于数据存储在句柄中,我不能简单地以这种方式在GUI中的另一个函数中使用它吗?

function pushbutton2_Callback(hObject, eventdata, handles)
     result = 5 + handles.MyData;

这是一个非常简单的例子,但我试图了解如何传递变量的逻辑。我知道那里有很多信息,我已经阅读过但我无法理解变量如何存储在结构中以及它们如何在函数之间传递。

1 个答案:

答案 0 :(得分:3)

更新句柄结构时,必须使用guidata存储它:

guidata(hObject, handles);

然后你可以在不同的回调中使用它。