我创建了一个带有许多按钮的GUI。我将按钮命名为“刷新”。我想要做的是当我点击这个按钮,通过运行一个m文件更新中央Matlab窗口中工作区的变量,该文件进行所有更改(打开文件获取数据并将它们放入单元格数组中,并在再次运行时刷新数据)。
我尝试了在网上找到的一切,比如在按钮回调函数下使用m文件的名称,但它不起作用。
这是我的按钮功能的代码,我在其中添加了myparameter.m:
function pushbutton1_Callback(hObject, eventdata, handles)
myparameters
但是当我运行它时,从m文件生成的变量不会保存在工作区中。如果我在主matlab窗口中编写myparameters,那么在m文件中创建的所有变量都会保存在工作区中。
答案 0 :(得分:0)
要从函数中分配基础工作区中的变量,您需要使用assignin
函数;如,
assignin('base', 'myVariableName', myVariableValue);
答案 1 :(得分:0)
假设myparameters
是script(它必须按照描述工作),那么您应该能够使用base workspace在evalin
中对其进行评估。这是你的回调的样子:
function pushbutton1_Callback(hObject, eventdata, handles)
evalin('base', 'myparameters');
end