exponenta event banner

Задайте коллбэк удаления объекта

Можно создать коллбэк удаления объекта, который выполняет код при удалении объекта.

Например, создайте коллбэк удаления объекта для рисунка, чтобы при удалении рисунка появилось диалоговое окно с запросом на удаление всех рисунков. Скопируйте следующий код в новый файл функции и сохраните его как figDelete.m либо в текущей папке, либо в папке на MATLAB® путь поиска файлов.

function figDelete(~,~)
yn = questdlg('Delete all figures?',...
    'Figure Menu',...
    'Yes','No','No');
switch yn
    case 'Yes'    
        allfigs = findobj(get(groot,'Children'),'Type','figure' );      
        set(allfigs,'DeleteFcn',[]);
        delete(allfigs)
    case 'No'
        return
end
end

Затем создайте два рисунков и присвойте figDelete функцию в DeleteFcn свойства. Удалите одну из рисунков и выберите опцию в появившемся диалоговом окне.

figure('DeleteFcn',@figDelete)
figure('DeleteFcn',@figDelete)