运行GUI需要在GUIDE中打开.fig文件

sha*_*wat 2 matlab user-interface matlab-figure matlab-guide

我正在尝试运行我创建的MATLAB GUI.如果我使用GUIDE打开.fig文件并按下那里的运行按钮,它会完美运行.

但是,当我双击MATLAB的"当前文件夹"部分中的.fig文件时,似乎无法找到该handles变量.这会导致它在使用时发出错误handles.

为什么会这样?有修复/解决方法吗?

我正在使用MATLAB R2011,但我也在R2012上尝试过它.代码运行正常,并且显示GUI很好,但是当它遇到handles变量时,它会出现以下错误:

尝试去引用非结构数组字段.

Sam*_*rts 6

使用GUIDE创建GUI时,它应创建.fig文件和.m文件.要运行它,您应该运行该.m文件,而不是双击该.fig文件.

.fig文件只包含有关GUI布局的静态信息 - 其中没有任何可执行文件可以初始化handles等等.

  • 更多细节:`.fig`文件实际上是一个重命名的`.zip`文件.您可以使用WinZip或其他压缩工具解压缩它.里面是一个`.mat`文件.加载它,你会发现它包含一个常规的MATLAB变量,其中包含GUI的所有轴和uicontrol等句柄的转储.没有可直接执行的东西.在那里的某个地方,我不记得在哪里,它还存储了与GUI相关的`.m`文件的名称.将图形加载到GUIDE时,运行按钮运行`.m`文件. (2认同)