在制作GUI时,我遇到了这个问题: 在函数(A)中使用脚本(S)使其他函数(B,C,D ...,在函数(A)中声明)在执行脚本(S)时未声明,它发生在MATLAB版本R2016b上,但是一切在MATLAB R2015b中工作正常。
基本上我有一堆轴和axesPushScript.m脚本,它在点击时执行。 在内部脚本我得到了这一行:
autorange_Callback(handles.autorange, eventdata, handles);
在我的主要功能中,我得到了这个:
function autorange_Callback(hObject, eventdata, handles)
if (hObject.Value==1)
axis(handles.axesSpectra, 'tight');
axesSpectra_ButtonDownFcn(handles.axesSpectra,eventdata,handles);
else axis(handles.axesSpectra, 'manual');
end
在MATLAB R2016b上收到此错误消息:
Undefined function or variable 'autorange_Callback'.
Error in axesPushScript (line 44)
autorange_Callback(handles.autorange, eventdata, handles);
Error in SNOM_alpha_4>axesTrace_ButtonDownFcn (line 463)
axesPushScript;
Error in gui_mainfcn (line 95)
feval(varargin{:});
Error in SNOM_alpha_4 (line 42)
gui_mainfcn(gui_State, varargin{:});
Error in
matlab.graphics.internal.figfile.FigFile/read>@(hObject,eventdata)SNOM_alpha_4('axesTrace_ButtonDownFcn',hObject,eventdata,guidata(hObject))
Error while evaluating Axes ButtonDownFcn
关于如何解决它的任何想法?
%---------------------------------------------- -----------------
编辑:
添加.rar文件,只需一个简单的按钮示例: