Можно создать обратный вызов удаления объекта, который выполняет код при удалении объекта.
Например, создайте обратный вызов удаления объекта для фигуры, чтобы при удалении фигуры появилось диалоговое окно с запросом на удаление всех фигур. Скопируйте следующий код в новый файл функции и сохраните его как 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)