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



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

如果我使用 GUIDE 界面设置 GUI,我会得到几个功能。我想在单击按钮时执行某个操作,保存变量,然后在另一个函数中使用该变量。

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

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

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

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

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

guidata(hObject, handles);

然后,您可以在其他回调中使用它。

最新更新