Transform Properties

Преобразуйте внешний вид и поведение объекта

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

h = hgtransform;
c = h.Children;
h.Matrix = makehgtform('scale',0.5);

Матрица Преобразования

расширить все

Матрица Преобразования, примененная к объекту преобразования и его дочерним элементам, заданная как матрица 4 на 4. Для получения дополнительной информации об определении этой матрицы смотрите Преобразования, поддерживаемые hgtransform.

Типы данных: double

Легенда

расширить все

Метка легенды, заданная как вектор символов или строковый скаляр. Легенда не отображается, пока вы не вызовете legend команда. Если вы не задаете текст, то legend устанавливает метку с помощью формы 'dataN'.

Это свойство доступно только для чтения.

Управление включения объекта в легенду или исключения из нее, возвращаемое как Annotation объект. Установите базовую IconDisplayStyle свойство одному из следующих значений:

  • 'on' - включить объект в легенду.

  • 'off' - Не включать объект в легенду. (по умолчанию)

  • 'children' - включать в легенду только дочерние элементы объекта в качестве отдельных элементов.

Интерактивность

расширить все

Видимость, заданная как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • 'on' - отображение всех объектов в Transform объект.

  • 'off' - Скрыть все объекты в Transform объект. Вы по-прежнему можете получить доступ к свойствам невидимых Transform объекты. Установка Visible свойство для Transform объект не изменяет Visible свойство для объектов в Transform объект.

Контекстное меню, заданное как ContextMenu объект. Используйте это свойство для отображения контекстного меню при щелчке правой кнопкой мыши по объекту. Создайте контекстное меню с помощью uicontextmenu функция.

Примечание

Если на PickableParts для свойства задано значение 'none' или если HitTest для свойства задано значение 'off', тогда контекстное меню не отображается.

Состояние выбора, заданное как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • 'on' - Выбран. Если вы кликните объект в режиме редактирования графика, то MATLAB® устанавливает его Selected свойство к 'on'. Если на SelectionHighlight свойство также установлено в 'on'MATLAB отображает указатели выделения вокруг объекта.

  • 'off' - Не выбран.

Отображение указателей выделения, заданное как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • 'on' - Отображать указатели выделения, когда Selected для свойства задано значение 'on'.

  • 'off' - Никогда не отображать указатели выделения, даже когда Selected для свойства задано значение 'on'.

Коллбэки

расширить все

Коллбэк по клику мыши, заданный как одно из следующих значений:

  • Указатель на функцию

  • Массив ячеек, содержащий указатель на функцию и дополнительные аргументы

  • Вектор символов, являющийся действительной командой или функцией MATLAB, которая оценивается в базовом рабочем пространстве (не рекомендуется)

Используйте это свойство для выполнения кода при клике по объекту. Если вы задаете это свойство с помощью указателя на функцию, то MATLAB передает два аргумента в функцию обратного вызова при выполнении коллбэка:

  • Объект, выбранный кликом мыши - Доступ к свойствам объекта, выбранного кликом мыши, из функции обратного вызова.

  • Данные о событиях - Пустой аргумент. Замените его на символ тильды (~) в определении функции, чтобы указать, что этот аргумент не используется.

Дополнительные сведения о том, как использовать указатели на функцию для определения функций обратного вызова, см. в разделе «Определение коллбэка».

Примечание

Если на PickableParts для свойства задано значение 'none' или если HitTest для свойства задано значение 'off', тогда этот коллбэк не выполняется.

Функция создания объектов, заданная в качестве одного из следующих значений:

  • Указатель на функцию.

  • Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

Для получения дополнительной информации об указании коллбэка как указателя на функцию, массива ячеек или вектора символов, см. Раздел «Определение коллбэка».

Это свойство задает функцию обратного вызова, которая должна выполняться, когда MATLAB создает объект. MATLAB инициализирует все значения свойств перед выполнением CreateFcn коллбэк. Если вы не задаете CreateFcn свойство, затем MATLAB выполняет функцию создания по умолчанию.

Установка CreateFcn свойство в существующем компоненте не имеет никакого эффекта.

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

Функция удаления объектов, заданная в качестве одного из следующих значений:

  • Указатель на функцию.

  • Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

Для получения дополнительной информации об указании коллбэка как указателя на функцию, массива ячеек или вектора символов, см. Раздел «Определение коллбэка».

Это свойство задает функцию обратного вызова, которая должна выполняться, когда MATLAB удаляет объект. MATLAB выполняет DeleteFcn коллбэк перед уничтожением свойств объекта. Если вы не задаете DeleteFcn свойство, затем MATLAB выполняет функцию удаления по умолчанию.

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

Контроль выполнения обратного вызова

расширить все

Прерывание коллбэка, заданное как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

Это свойство определяет, можно ли прерывать выполняемый коллбэк. Существует два состояния коллбэка:

  • Обратный коллбэк running - это актуальный на данный момент коллбэк.

  • Обратный коллбэк interrupting - это коллбэк, который пытается прервать текущий коллбэк.

Всякий раз, когда MATLAB вызывает коллбэк, этот коллбэк пытается прервать текущий коллбэк (если он существует). The Interruptible свойство объекта, имеющего текущий коллбэк, определяет, разрешено ли прерывание.

  • Значение 'on' позволяет другим коллбэкам прерывать коллбэки объекта. Прерывание происходит в следующей точке, где MATLAB обрабатывает очередь, например, когда есть drawnow, figure, uifigure, getframe, waitfor, или pause команда.

    • Если текущий коллбэк содержит одну из этих команд, MATLAB останавливает выполнение коллбэка в этой точке и выполняет прерывание обратного вызова MATLAB возобновляет выполнение текущего коллбэка после завершения прерывания обратного вызова.

    • Если текущий коллбэк не содержит одну из этих команд, MATLAB завершает выполнение коллбэка без прерывания.

  • Значение 'off' блокирует все попытки прерывания. The BusyAction свойство объекта, имеющего прерывание обратного вызова, определяет, отменяется ли прерывание обратного вызова или помещается в очередь.

Примечание

Прерывание и выполнение коллбэка происходят по-разному в таких ситуациях:

  • Если прерывание обратного вызова является DeleteFcn, CloseRequestFcn или SizeChangedFcn коллбэк, тогда прерывание происходит независимо от Interruptible значение свойства.

  • Если текущий коллбэк выполняющегося в данного момента, waitfor function, тогда прерывание происходит независимо от Interruptible значение свойства.

  • Timer объекты выполняются в соответствии с расписанием независимо от Interruptible значение свойства.

Когда происходит прерывание, MATLAB не сохраняет состояние свойств или отображения. Для примера, объект, возвращенный gca или gcf команда может измениться при выполнении другого коллбэка.

Постановка в очередь коллбэков, заданная как 'queue' или 'cancel'. The BusyAction свойство определяет, как MATLAB обрабатывает выполнение прерываний обратного вызова. Существует два состояния коллбэка:

  • Обратный коллбэк running - это актуальный на данный момент коллбэк.

  • Обратный коллбэк interrupting - это коллбэк, который пытается прервать текущий коллбэк.

Всякий раз, когда MATLAB вызывает коллбэк, этот коллбэк пытается прервать текущий коллбэк. The Interruptible свойство объекта, имеющего текущий коллбэк, определяет, разрешено ли прерывание. Если прерывание не разрешено, то BusyAction свойство объекта, имеющего прерывание обратного вызова, определяет, будет ли оно сброшено или помещено в очередь. Это возможные значения BusyAction свойство:

  • 'queue' - помещает прерывание обратного вызова в очередь вызовов, подлежащих обработке после концов обратного коллбэка.

  • 'cancel' - Не выполняет прерывание обратного вызова.

Дети, которые могут захватывать клики мыши, заданные как одно из следующих значений:

  • 'visible' - Любой дочерний объект может захватить клик мыши, в зависимости от PickableParts значение свойства дочернего элемента.

  • 'none' - Никакие дочерние объекты не могут захватывать клики мыши, независимо от PickableParts значение свойства дочернего элемента.

Ответ на клики мыши, захваченные детьми, задается как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • 'on' - Запуск ButtonDownFcn коллбэк Transform объект. Если вы определили ContextMenu Свойство активируйте контекстное меню.

  • 'off' - Не запускать коллбэки Transform объект. Вместо этого инициируйте коллбэки для ближайшего предка, у которого есть HitTest значение свойства установлено в 'on' и a PickableParts значение свойства, которое позволяет предку захватывать клики мыши.

A Transform объект не может захватывать клики мыши. Однако, если вы кликните дочерний элемент Transform объект и если у дочернего элемента есть HitTest значение свойства установлено в 'off', затем ребенок передает нажатие кнопки в Transform объект.

Это свойство доступно только для чтения.

Статус удаления, возвращенный как логическое значение включения/выключения типа matlab.lang.OnOffSwitchState.

MATLAB устанавливает BeingDeleted свойство к 'on' когда DeleteFcn коллбэк начинает выполняться. The BeingDeleted свойство остается установленным на 'on' пока объект компонента не перестанет существовать.

Проверьте значение BeingDeleted свойство, чтобы убедиться, что объект не будет удален до запроса или изменения.

Родитель/ребенок

расширить все

Родительский элемент, заданный как Axes, Group, или Transform объект.

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

Вы не можете добавить или удалить дочерние элементы, используя Children свойство. Чтобы добавить дочерний элемент в этот список, установите Parent свойство дочернего графического объекта к Transform объект.

Видимость указателя на объект в Children свойство родительского элемента, заданное в качестве одного из следующих значений:

  • 'on' - указатель на объект всегда отображается.

  • 'off' - указатель на объект всегда невидим. Эта опция используется для предотвращения непреднамеренных изменений другой функцией. Установите HandleVisibility на 'off' временно скрыть указатель во время выполнения этой функции.

  • 'callback' - Указатель на объект виден из коллбэков или функций, вызываемых коллбэками, но не из функций, инициируемых из командной строки. Эта опция блокирует доступ к объекту в командной строке, но позволяет функциям обратного вызова обращаться к нему.

Если объект не указан в Children свойство родительского элемента, тогда функции, которые получают указатели на объекты путем поиска иерархии объектов или запросов свойств указателя, не могут вернуть его. Примеры таких функций включают в себя get, findobj, gca, gcf, gco, newplot, cla, clf, и close функций.

Скрытые указатели на объекты все еще действительны. Установите корневой ShowHiddenHandles свойство к 'on' список всех указателей на объекты независимо от их HandleVisibility настройка свойств.

Идентификаторы

расширить все

Это свойство доступно только для чтения.

Тип графического объекта, возвращенный как 'hgtransform'. Используйте это свойство для поиска всех объектов заданного типа в иерархии графических изображений, например, для поиска типа с помощью findobj.

Идентификатор объекта, заданный как вектор символов или строковый скаляр. Можно задать уникальное Tag значение, которое служит идентификатором для объекта. Когда вам нужен доступ к объекту в другом месте вашего кода, вы можете использовать findobj функция для поиска объекта на основе Tag значение.

Пользовательские данные, заданные как любой массив MATLAB. Для примера можно задать скаляр, вектор, матрицу, массив ячеек, символьный массив, таблицу или структуру. Используйте это свойство для хранения произвольных данных на объекте.

Если вы работаете в App Designer, создайте общие или частную собственность в приложении, чтобы делиться данными вместо использования UserData свойство. Для получения дополнительной информации см. раздел «Обмен данными в приложениях App Designer».

Вопросы совместимости

расширить все

Не рекомендуемый запуск в R2020a

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте