zoukankan      html  css  js  c++  java
  • 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

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

  • 相关阅读:
    cygwin 下配置ssh
    使用MarsEdit写博客
    bash no job control in this shell
    安装devtoolset-2:因由安装gcc 4.8而引起
    AFNetworking Property with 'retain (or strong)' attribute must be of object type
    从xib 创建 collectionViewCell
    CocoaPods 安装
    个人理解的 Https 通信流程
    cellforrowatindexpath 不执行 的原因
    do{} while(0) 的意义和用法
  • 原文地址:https://www.cnblogs.com/shanchuan/p/8150271.html
Copyright © 2011-2022 走看看