delete.m

来自「有关matlab的电子书籍有一定的帮助希望有用」· M 代码 · 共 41 行

M
41
字号
function delete(obj)

%   Author: T. Krauss
%   Copyright (c) 1988-98 by The MathWorks, Inc.
%   $Revision: 1.2 $

obj = struct(obj);
for i = 1:length(obj)
    fig = get(obj(i).h,'parent');
    ud = get(fig,'userdata');
    
    ind = find(obj(i).h == [ud.Objects.fdax.h]);
    if isempty(ind)
        error('Not a valid object')
    end
        
    objud = get(obj(i).h,'userdata');
    
    % need to delete any lines which are children of this axes
    lines = ud.Objects.fdline.h;
    if length(lines)>1
        lines = [lines{:}];
    end
    for j = 1:length(lines)
        if get(lines(j),'parent') == obj(i).h
            delete(ud.Objects.fdline(j))
        end
    end
    ud = get(fig,'userdata');
    
    delete(obj(i).h)
    
    ud.Objects.fdax(ind) = [];
    
    set(fig,'userdata',ud)
end
if ~isempty(obj)
    setpos(ud.Objects.fdax,fig)
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?