Предотвращение доступа к фигурам и осям

Почему предотвращают доступ

В некоторых ситуациях важно препятствовать тому, чтобы конкретные фигуры или оси стали целью для вывода графических данных. Таким образом, препятствуйте тому, чтобы они стали текущей фигурой, как возвращено gcf, или текущая система координат, как возвращено gca.

Вы можете хотеть предотвратить доступ к фигуре, содержащей средства управления, которые реализуют пользовательский интерфейс. Или, вы можете хотеть предотвратить доступ к оси, который является частью прикладной программы, к которой получают доступ только приложением.

Как предотвратить доступ

Препятствуйте тому, чтобы функции MATLAB® предназначались для конкретной фигуры или осей путем удаления их указателей из списка видимых указателей.

Два свойства управляют видимостью указателя: HandleVisibility и ShowHiddenHandles

HandleVisibility свойство всех графических объектов. Это управляет видимостью указателя объекта на три возможных значения:

  • on — Можно получить указатель объекта с функциями, которые возвращают указатели, такой как (gcfgcagcoполучение, и findobjЭто поведение по умолчанию.

  • callback — Указатель объекта отображается только в рабочей области функции обратного вызова.

  • off — Указатель скрыт от всех функций, выполняющихся в командном окне и в функциях обратного вызова.

Свойства, затронутые видимостью указателя

Когда HandleVisibility объекта установлен в callback или off:

  • Указатель объекта не появляется в Children своего родительского элемента свойство.

  • Фигуры не появляются в CurrentFigure корня свойство.

  • Оси не появляются в содержании CurrentAxes фигуры свойство.

  • Графические объекты не появляются в CurrentObject фигуры свойство.

Функции, затронутые видимостью указателя

Когда указатель не отображается в его родительском списке дочерних элементов, функции, которые получают указатели путем поиска иерархии объектов, не могут возвратить указатель. Эти функции включают getfindobjgcagcfgconewplotclaclf, и close.

Значения Возвращены gca и gcf

Когда фигура скрывать-указателя является самой верхней на экране, но сложила фигуры видимого указателя позади него, gcf возвращает самую верхнюю фигуру видимого указателя в стеке. То же поведение верно для gca. Если никакие фигуры видимого указателя или оси не существуют, вызывая gcf или gca создает тот.

Доступ к объектам скрывать-указателя

Корневой ShowHiddenHandles свойство включает и отключает управление видимостью указателя. По умолчанию, ShowHiddenHandles off, что означает, что MATLAB следует за установкой HandleVisibility каждого объекта свойство.

Установка ShowHiddenHandles к on эквивалентно установке HandleVisibility свойство всех объектов в графической иерархии к on.

Примечание

Заголовок осей и текстовые объекты подписи по осям не являются дочерними элементами осей. Чтобы получить доступ к указателям этих объектов, используйте оси TitlexlabelYLabel , и ZLabel свойства.

close функция также предоставляет доступ фигурам скрывать-указателя, использующим hidden опция. Например:

close('hidden') 

закрывает самую верхнюю фигуру по экрану, даже если его указатель скрыт.

Объединение all и hidden опции:

close('all','hidden')

завершения все фигуры.

Обработка законности по сравнению с видимостью указателя

Все указатели остаются допустимыми независимо от состояния их HandleVisibility свойство. Если вы присвоили указатель на объект переменной, можно всегда устанавливать и получать ее свойства с помощью той переменной указателя.