Удалите заданную фигуру
close
close(h)
close name
close all
close all hidden
close all force
status = close(...)
close
удаляет текущую фигуру или заданную фигуру (фигуры). Это опционально возвращает состояние операции закрытия.
close
удаляет текущую фигуру (эквивалентный close(gcf)
).
close(h)
удаляет фигуру, идентифицированную h
. Если h
массив, close
удаляет все фигуры, идентифицированные h
H
может также быть фигура Number
.
close name
удаляет фигуру с указанным именем.
close all
удаляет все фигуры, указатели которых не скрыты.
close all hidden
удаляет все фигуры включая тех со скрытыми указателями.
close all force
удаляет все фигуры, включая графический интерфейсы пользователя для который CloseRequestFcn
был изменен, чтобы не закрыть окно.
status = close(...)
возвращает 1
если заданные окна были удалены и 0
в противном случае.
close
функция работает путем оценки CloseRequestFcn
заданной фигуры свойство с оператором
eval(get(h,'CloseRequestFcn'))
CloseRequestFcn
по умолчаниюclosereq
, удаляет текущую фигуру с помощью delete(get(groot,'CurrentFigure'))
. Если вы задаете массив указателей фигуры, close
выполняет CloseRequestFcn
каждой фигуры в свою очередь. Если ошибка, которая отключает выполнение
CloseRequestFcn
происходит, фигура не удалена. Обратите внимание на то, что использование менеджера окон вашего компьютера (т.е. пункт меню Close) также вызывает CloseRequestFcn
фигуры.
Если указатель фигуры скрыт (т.е. HandleVisibility
фигуры свойство установлено в
callback
или off
и корневой ShowHiddenHandles
свойство установлено в on
), необходимо задать hidden
опция при попытке получить доступ к фигуре, использующей all
опция.
Чтобы удалить все фигуры безусловно, используйте операторы
set(groot,'ShowHiddenHandles','on') c = get(groot,'Children'); delete(c)
Фигура CloseRequestFcn
позволяет вам или задерживать или прерывать закрытие фигуры однажды close
функция была выпущена. Например, можно отобразить диалоговое окно, чтобы видеть, хочет ли пользователь действительно удалить фигуру или сохранить и вымыться перед закрытием.
При кодировании CloseRequestFcn
коллбэк, убедитесь, что он не вызывает close
, потому что это настраивает рекурсию, которая приводит к предупреждению MATLAB®. Вместо этого коллбэк должен уничтожить фигуру с delete
. delete
функция не выполняет CloseRequestFcn
фигуры; это удаляет заданную фигуру.