-2

我创建了一个带有许多按钮的 GUI。我将一个按钮命名为“刷新”。我想要做的是当我点击这个按钮时,通过运行一个进行所有更改的 m 文件来更新中央 Matlab 窗口中工作区的变量(打开文件获取数据并将它们放入单元格数组中,并在再次运行时刷新数据)。

我尝试了所有可能在网上找到的方法,比如在按钮回调函数下使用 m 文件的名称,但它不起作用。

这是我的按钮功能的代码,我在其中添加了 myparameter.m:

function pushbutton1_Callback(hObject, eventdata, handles)
myparameters

但是当我运行它时,从 m 文件生成的变量不会保存在工作区中。如果我在主 matlab 窗口中编写 myparameters,则在 m 文件中创建的所有变量都保存在工作区中。

4

2 回答 2

0

要从函数分配基础工作区中的变量,您需要使用该assignin函数;例如,

assignin('base', 'myVariableName', myVariableValue);
于 2013-05-25T19:56:40.047 回答
0

假设myparameters是一个脚本(它必须按照描述工作),那么您应该能够使用evalin. 这是您的回调的样子:

function pushbutton1_Callback(hObject, eventdata, handles)
   evalin('base', 'myparameters');
end
于 2017-06-23T19:29:04.393 回答