matlab guide未定义与 'matlab.ui.control.UIControl' 类型的输入参数相对应的函数

事情是这样的:

使用matlab的guide进行界面开发的时候,先拖了一个控件到窗口,然后写它的回调函数,后来发现这个控件的Tag名取的不合理,就将其改动了,比如从原来的”slider2”改为了”slider_height”,然后保存运行,matlab就报错了,错误类似下面:

错误使用 feval
未定义与 'matlab.ui.control.UIControl' 类型的输入参数相对应的函数
'slider2_CreateFcn'。

出错 gui_mainfcn (line 95)
        feval(varargin{:});

出错 altimeterProcess (line 42)
    gui_mainfcn(gui_State, varargin{:});

这个时候已经有新的slider_height_CreateFcn以及slider_height_Callback函数,但是为什么matlab还要求slider2_CreateFcn函数的存在呢?slider2按道理不是应该消失了吗?

具体原因我不知道,但是从关于gui中控件删除的疑问中可以看到,忽略这个错误不会对程序运行有什么影响,只是每次都有那个“叮叮叮”的声音。如果要让matlab不报错,就把它提示没有定义的函数的定义给出来。以上面的为例,把slider2_CreateFcn的定义给出来,具体做法是,找一个相同控件的CreateFcn函数复制过来将它的名字改为slider2_CreateFcn即可:

% --- Executes during object creation, after setting all properties.
function slider2_CreateFcn(hObject, eventdata, handles)
% hObject    handle to slider_point (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: slider controls usually have a light gray background.
if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor',[.9 .9 .9]);
end

再运行就不会报错了,真想知道具体原因啊!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值