близко

Удалите заданную фигуру

Синтаксис

близко
близкий (h)
близкое имя
закройте все
закройте все скрытые
закройте всю силу
состояние = близко (...)

Описание

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, происходит, фигура не удалена. Обратите внимание на то, что с помощью менеджера окон компьютера (i. e., пункт меню Close), также вызывает CloseRequestFcn фигуры.

Если указатель фигуры скрыт (i. e., 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 фигуры; это удаляет заданную фигуру.

Смотрите также

| |

Представлено до R2006a

Была ли эта тема полезной?