Matlab GUI尝试引用非结构数组的字段

时间:2013-04-08 23:52:43

标签: matlab-guide handles

我在Matlab上有一个GUI菜单,带有4个按钮(menu.fig)。然后,当我点击按钮时,我想要打开4个.fig文件。这一切都没问题,当我从菜单打开一个.fig并插入值来做一个情节我得到这个错误:

  

????尝试引用非结构数组的字段。

如果我尝试直接打开1.fig,一切都很完美。

我读到问题出在eval()上,但我无法解决。

我更改了每个.fig文件中的变量名称

One 1.fig:

function pbutton1_Callback(hObject, eventdata, handles)
A1=get(handles.edtSAmp,'String');
f1=get(handles.edtSFreq, 'String');
fi1=get(handles.edtSFase, 'String');
t1=get(handles.popTipo, 'Value');

A1=str2double(A1);
f1=str2double(f1);
fi=str2double(fi1);

SinalSinusoidal(A1,f1,fi,t1);

我在第1行遇到了错误。

2 个答案:

答案 0 :(得分:2)

我想这是MATLAB GUI处理得不好的东西。我知道它曾经有用,但是当你调整你的用户界面或用户界面相关的代码有点意外地你修改了一些区域,MATLAB告诉你不要触摸,这种问题开始发生。

工作量是通过点击运行从M编辑器启动GUI

我知道它有效,但最初,当我直接宣传它时,它也有效。所以,这不是它的结束,人们只是没有走到尽头。

答案 1 :(得分:0)

问题在于handles1。它不像你期望的那样是一个结构数组。在使用GUIDE创建的GUI中,此变量通常称为handles,如果同时具有handleshandles1,请确保handles1包含图中对象的句柄。如果您仅使用handles1,请确保正确初始化它。