从指南gui运行脚本文件

时间:2016-03-02 12:34:45

标签: matlab

我已使用导入工具将.txt文件数据作为单元格阵列导入基础工作区。

现在我使用带有按钮的GUIDE创建了GUI,该按钮将运行一个脚本,该脚本利用基本工作区变量来创建另一个文件。

Link

当我使用按钮运行createfile时,它显示未定义的函数或变量,即使该变量位于基础工作区中。

但是当我在命令窗口中运行相同的文件时,一切都很好。有什么建议为什么会这样?

2 个答案:

答案 0 :(得分:1)

GUI具有自己的工作空间,因此您必须在GUI初始化时提交基本工作空间变量。例如:yourGUI(yourData);

将GUI的OpeningFcn编辑为以下内容:

handles.InputData= varargin(1);
%only for clear arrangement
handles.InputData = handles.InputData{1, 1};

随意重命名InputData,但不要忘记更新句柄结构

guidata(hObject, handles);

现在,您可以在所有CallbackFunction中访问handles.InputData,但请注意,guidata(hObject, handles);每次更改后您都必须handles.InputData。请阅读documentation以获取更多信息。

答案 1 :(得分:0)

哪个函数/变量未定义?该文件的名称是什么以及您将其分配给哪个变量?我的猜测(字面意思),假设pushbutton1_Callback输入中没有一个是你提到的变量,将是以下内容:

功能和命令窗口不共享同一工作区。如果你想从你的函数中“看到”某些东西,你必须将它包含在输入中。

相关问题