指南错误:尝试引用非结构数组的字段

时间:2014-11-28 17:15:37

标签: matlab matlab-guide

我正在尝试使用我在MATLAB中使用GUID做的gui,当我双击.fig文件并填写文本字段并按下按钮时,我有以下错误消息,但如果我右键单击在它上面并选择使用GUIDE编辑然后按下运行图(绿色三角形),当我填充值并按下按钮时,它正常工作并给我结果。

错误讯息:

Attempt to reference field of non-structure array.

Error in FYP>pushbutton1_Callback (line 474)
d1min = str2double(get(handles.d1min,'String'));

Error in gui_mainfcn (line 96)
        feval(varargin{:});

Error in FYP (line 16)
    gui_mainfcn(gui_State, varargin{:});

Error in
@(hObject,eventdata)FYP('pushbutton1_Callback',hObject,eventdata,guidata(hObject))


Error while evaluating uicontrol Callback

1 个答案:

答案 0 :(得分:1)

作为评论的扩展,以下是文档所说的关于GUIDE生成的.fig和.m文件的内容(可用here)

  

默认情况下,第一次保存或运行GUI时,GUIDE会存储GUI   在两个文件中:

     

图片文件,扩展名为.fig,包含完整说明   GUI布局和每个UI组件,如按钮,轴,   面板,菜单等。 FIG文件是二进制文件,你不能   修改它,除非通过更改GUIDE中的布局。图文件是   MAT文件的专业化。请参阅编写自定义应用程序以进   并编写MAT文件以获取更多信息。

     

扩展名为.m的代码文件,最初包含初始化   用于控制GUI行为的一些回调的代码和模板。您   通常将为UI组件编写的回调添加到此文件中。   由于回调是函数,GUI代码文件永远不会是   MATLAB®脚本。

因此,当您看到需要运行.m文件才能启动GUI时。希望现在有点清楚了:))