close

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

Синтаксис

close
close(h)
close name
close all
close all hidden
close all force
status = close(...)

Описание

close удаляет текущую фигуру или заданную фигуру (фигуры). Это опционально возвращает состояние операции закрытия.

close удаляет текущую фигуру (эквивалентный close(gcf)).

close(h) удаляет фигуру, идентифицированную h. Если h массив, close удаляет все фигуры, идентифицированные hH может также быть фигура 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 фигуры; это удаляет заданную фигуру.

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

| |

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