UI Figure Properties

Управляйте внешним видом и поведением фигуры пользовательского интерфейса в App Designer

Фигуры пользовательского интерфейса являются контейнерами для того, чтобы создать приложения в App Designer. Свойства управляют внешним видом и поведением фигуры пользовательского интерфейса. Используйте запись через точку для ссылки на конкретный объект и свойство:

uf = uifigure;
name = uf.Name;
uf.Name = 'My App'; 

Внешний вид окна

развернуть все

Цвет фона, заданный как триплет RGB, шестнадцатеричный цветовой код или один из перечисленных в таблице параметров цвета.

Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должны быть в диапазоне [0,1]; например, [0,4 0,6 0,7].

  • Шестнадцатеричный цветовой код является вектором символов или скаляром строки, который запускается с символа хеша (#), сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут колебаться от 0 до F. Значения не являются чувствительными к регистру. Таким образом цветовые коды '#FF8800', '#ff8800', '#F80' и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

'none'Не применяетсяНе применяетсяНе применяетсяНет цвета

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB® во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Статус окна, заданный как одно из этих значений:

  • 'normal' — Окно отображается в нормальном состоянии.

  • 'minimized' — Окно сворачивается, но можно все еще выполнить команды, чтобы получить или установить его свойства, добавить дочерние элементы или создать графики в окне.

  • 'maximized' — Окно заполняет экран. Минимизирование, восстановление и близкие кнопки, обеспеченные операционной системой, появляются в углу окна. Если окно имеет меню в нормальном состоянии, они присутствуют в этом состоянии.

  • 'fullscreen' — Окно заполняет экран. Однако минимизирование, восстановление и близкие кнопки, обеспеченные операционной системой, скрыты. Если окно имеет меню в нормальном состоянии, они присутствуют в этом состоянии.

При нажатии на минимизирование максимизируйте, или кнопка восстановления, обеспеченная операционной системой, устанавливает свойство WindowState соответственно. Нажатие Ctrl+F11 (Windows® и Linux®) или Ctrl+Command+f (Mac OS) переключает состояние 'fullscreen'. Установка этого свойства на прикрепленной фигуре или в MATLAB Online™ не поддержана.

Фигуры пользовательского интерфейса не могут быть минимизированы непосредственно от полноэкранного состояния.

Положение

развернуть все

Местоположение и размер фигуры пользовательского интерфейса, исключая границы и строку заголовка, заданную как четырехэлементный вектор формы [left bottom width height].

В этой таблице описываются каждый элемент в векторе.

ЭлементОписание
leftРасстояние от левого края главного дисплея к внутреннему левому краю окна UI Figure. Это значение может быть отрицательным в системах, которые имеют больше чем один монитор.
bottomРасстояние от базового края главного дисплея к внутреннему базовому краю окна UI Figure. Это значение может быть отрицательным в системах, которые имеют больше чем один монитор.
widthРасстояние между правыми и левыми внутренними краями фигуры пользовательского интерфейса.
heightРасстояние между верхними и нижними внутренними краями фигуры пользовательского интерфейса.

Модули измерения, заданного как 'pixels'.

Местоположение и размер фигуры пользовательского интерфейса, исключая границы и строку заголовка, заданную как четырехэлементный вектор формы [left bottom width height]. Все измерения указаны в единицах, заданных свойством Units.

Это значение свойства идентично значению свойства Position.

Фигура пользовательского интерфейса изменяемого размера, заданная как 'on' или 'off'. Когда это свойство установлено в 'on', фигура пользовательского интерфейса изменяемого размера. В противном случае это не изменяемого размера.

Автоматически измените размер дочерних элементов, заданных как 'on' или 'off'.

  • 'on' — Дочерние компоненты автоматически изменяют размер, когда контейнер изменяет размер.

  • 'off' Дочерние компоненты не изменяют размер.

Свойство AutoResizeChildren влияет на прямые дочерние элементы контейнера, не дочерние элементы во вложенных контейнерах.

Чтобы настроить поведение при изменении размера, установите свойство AutoResizeChildren на 'off' и создайте коллбэк SizeChangedFcn для контейнера. Для получения дополнительной информации смотрите Управление Приложения Изменяемого размера в App Designer.

Чтобы отключить изменение размеров приложения, установите свойство Resize фигуры к 'off'.

Графический вывод

развернуть все

Карта цветов для содержимого UIAxes, заданного как m-by-3 массив RGB (красный, зеленый, синий) триплеты, которые задают отдельные цвета m.

Пример: uifigure('Colormap',[1 0 1; 0 0 1; 1 1 0]) устанавливает карту цветов на три цвета: пурпурный, синий цвет, и желтый.

MATLAB получает доступ к этим цветам их номером строки.

Карта прозрачности для содержимого осей, заданного как вектор значений между 0 и 1, включительно. Размер вектора может быть m-1 или 1 m. Альфа-значения доступов MATLAB их индексом в векторе. Alphamaps может быть любой длиной.

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

развернуть все

Фигура пользовательского интерфейса видимости, заданная как 'on' или 'off'. Свойство Visible определяет, отображена ли фигура пользовательского интерфейса на экране. Если свойство Visible установлено в 'off', целая фигура пользовательского интерфейса скрыта. Однако можно все еще задать и свойства доступа.

Чтобы заставить ваше приложение запуститься быстрее, установите свойство Visible всех компонентов, которые не отображены при запуске к 'off'.

Примечание

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

Текущая точка, возвращенная как двухэлементный вектор. Вектор содержит (x, y) координаты указателя мыши, измеренного в пикселях от нижнего левого угла фигуры пользовательского интерфейса. Если фигура пользовательского интерфейса с возможностью прокрутки, координаты измеряются от нижнего левого угла области с возможностью прокрутки. Областью с возможностью прокрутки является область, которая ограничена пределами полос прокрутки.

Координаты обновляют, когда вы делаете любое следующее:

  • Нажмите кнопку мыши в фигуре пользовательского интерфейса.

  • Отпустите кнопку мыши после нажатия его в фигуре пользовательского интерфейса.

  • Нажмите кнопку мыши в фигуре пользовательского интерфейса, и затем выпустите его вне фигуры пользовательского интерфейса.

  • Вращайте колесико прокрутки в фигуре пользовательского интерфейса.

  • Переместите мышь в фигуре (не нажимая кнопок), при условии, что свойство WindowButtonMotionFcn не пусто.

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

Если вы используете свойство CurrentPoint построить точки, координатные значения могут содержать погрешность округления.

Текущий символ, возвращенный как символ последней нажатой клавиши. Это свойство обновляет, когда фигура пользовательского интерфейса фокусируется, в то время как пользователь нажимает клавишу.

Тип выбора мыши, возвращенный как 'normal', 'extend', 'alt' или 'open'. Это свойство предоставляет информацию о последнем нажатии кнопки мыши, которое произошло в фигуре пользовательского интерфейса.

Эта таблица приводит возможные значения SelectionType и пользовательские действия, которые производят те значения.

Значение

Соответствующее действие

'normal'

Щелкните левой кнопкой мыши.

'extend'

Любое следующее:

  • Shift - щелкните левой кнопкой мыши.

  • Щелкните средней кнопкой мыши.

  • Щелкните обеими левыми и правыми кнопками мыши.

'alt'

Любое из следующего:

  • Control - щелкните левой кнопкой мыши.

  • Щелкните правой кнопкой мыши.

'open'

Дважды кликните любую кнопку мыши.

Способность прокрутить, заданный как 'off' или 'on'. Установка этого свойства к 'on' позволяет прокрутить в контейнере. Однако существуют дополнительные требования:

  • Дочерние компоненты в контейнере должны занять большую область, чем контейнер может отобразиться когда-то.

  • Компоненты, которые не помещаются в контейнер, должны быть выше или справа от контейнера. Вы не можете прокрутить к компонентам, которые являются ниже или слева от контейнера.

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

Общие коллбэки

развернуть все

Кнопка вниз коллбэк, заданный как одно из этих значений:

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

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

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

Этот коллбэк выполняется, когда пользователь кликает по пустой области фигуры пользовательского интерфейса.

Для получения дополнительной информации об определении значения свойства коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.

Используйте свойство SelectionType определить, нажал ли пользователь модифицирующие клавиши.

Функция создания объекта, заданная как одно из этих значений:

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

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

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

Для получения дополнительной информации об определении коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.

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

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

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

Функция удаления объекта, заданная как одно из этих значений:

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

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

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

Для получения дополнительной информации об определении коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.

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

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

Коллбэки клавиатуры

развернуть все

Коллбэк нажатия клавиши, заданный как одно из этих значений:

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

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

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

Эта функция обратного вызова выполняется, когда пользователь нажимает клавишу, в то время как фигура пользовательского интерфейса или дочерний компонент фокусируются. При нажатии клавиши на компоненте, который принимает, клавиатурный фокус (такой как поле редактирования) не выполняет коллбэк, если компонент не отключен. Можно отключить компонент путем установки свойства Enable или Editable на 'off'.

Если пользователь нажимает несколько клавиш приблизительно в то же время, MATLAB обнаруживает все ключи.

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

СвойствоОписание
Character

Символ, который появляется в результате нажатия клавиши или ключей.

Нажатие определенных клавиш или изменение ключей с ключом Ctrl могут возвратить непечатные символы в этом свойстве.

Нажимание одних только определенных клавиш (таких как Ctrl, Alt, Shift) не генерирует данные Character.

Modifier

Массив ячеек, содержащий имена нажатых модифицирующих клавиш, таких как control, alt или shift. Если никакие модифицирующие клавиши не нажимаются, массив ячеек пуст.

Key

Клавиша, нажатая, идентифицированная строчной меткой на ключе или описательным словом, таким как 'space'.

SourceОбъект, который фокусируется, когда клавиша нажата.
EventName'KeyPress'

Для получения дополнительной информации об определении значений свойств коллбэка и использовании аргументов коллбэка, смотрите Коллбэки Записи в App Designer.

Свойство CurrentCharacter также возвращает символьную информацию.

Коллбэк ключевого релиза, заданный как одно из этих значений

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

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

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

Эта функция обратного вызова выполняется, когда пользователь отпускает клавишу, в то время как фигура пользовательского интерфейса или дочерний компонент фокусируются. При отпускании клавиши на компоненте, который принимает, клавиатурный фокус (такой как поле редактирования) не выполняет коллбэк, если компонент не отключен. Можно отключить компонент путем установки свойства Enable или Editable на 'off'.

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

СвойствоОписание
Character

Символ, который соответствует ключу или клавишам, которые отпускаются.

Определенные ключи или сочетания клавиш могут возвратить непечатные символы в этом свойстве.

Нажимание и отпускание одних только определенных клавиш (таких как Ctrl, Alt, Shift) не генерируют данные Character.

Modifier

Массив ячеек, содержащий имена выпущенных модифицирующих клавиш, таких как control, alt или shift. Если никакие модифицирующие клавиши не выпущены, массив ячеек пуст.

Key

Клавиша, отпущенная, идентифицированная (строчной) меткой на ключе или описательным словом, таким как 'space'.

SourceОбъект, который фокусируется, когда клавиша отпускается.
EventName'KeyRelease'

Для получения дополнительной информации об определении значений свойств коллбэка и использовании аргументов коллбэка, смотрите Коллбэки Записи в App Designer.

Обратные вызовы окна

развернуть все

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

Полагайте, что вызывание функции delete закрывает Figure в коллбэке CloseRequestFcn:

  • В App Designer вызовите delete(app).

  • Для приложений, созданных программно, вызовите delete(f), где f является объектом Figure.

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

Коллбэк изменения размера, заданный как одно из этих значений:

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

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

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

Задайте этот коллбэк, чтобы настроить размещение приложения, когда размер этого контейнера изменяется (например, когда пользователь изменяет размер окна).

Примечание

Коллбэк SizeChangedFcn не выполнится, если свойство AutoResizeChildren этого контейнера не будет установлено в 'off'. В App Designer можно сделать исполняемый файл SizeChangedFcn путем снятия флажка AutoResizeChildren в панели UI Figure Properties.

Коллбэк SizeChangedFcn выполняется когда:

  • Этот контейнер становится видимым впервые.

  • Этот контейнер видим, в то время как его размер изменяется.

  • Этот контейнер становится видимым впервые после того, как его размер изменится. Эта ситуация происходит, когда размер изменяется, в то время как контейнер невидим, и затем это становится видимым позже.

Другие важные моменты, чтобы рассмотреть при определении коллбэка SizeChangedFcn:

  • Рассмотрите задержку отображения этого контейнера до окончания всех переменных, что использование SizeChangedFcn задано. Эта практика может препятствовать тому, чтобы коллбэк SizeChangedFcn возвратил ошибку. Чтобы задержать отображение контейнера, установите его свойство Visible на 'off'. Затем установите свойство Visible на 'on' после того, как вы задаете переменные, которые использует ваш коллбэк SizeChangedFcn.

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

  • Чтобы получить доступ к контейнеру, который изменяет размер из SizeChangedFcn, обратитесь к исходному объекту (первый входной параметр в коллбэке) или используйте функцию gcbo.

Кнопка Window вниз коллбэк, заданный как одно из этих значений:

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

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

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

Этот коллбэк выполняется, когда пользователь щелкает:

  • Пустая область фигуры пользовательского интерфейса

  • Компонент пользовательского интерфейса в фигуре пользовательского интерфейса, которая поддерживает свойство ButtonDownFcn

  • Графический объект в фигуре пользовательского интерфейса, которая поддерживает свойство ButtonDownFcn

Например, нажатие на объект axes инициировало коллбэк WindowButtonDownFcn.

См. список свойств для определенного компонента пользовательского интерфейса или графического объекта, чтобы определить, поддерживает ли это свойство ButtonDownFcn. См. Приложения Разработки в App Designer для свойств компонентов пользовательского интерфейса. См. Свойства графического объекта для свойств графических объектов.

Примечание

Коллбэк выполняется, когда пользователь нажимает компонент uiaxes, даже при том, что компоненты uiaxes не поддерживают свойство ButtonDownFcn.

Для получения дополнительной информации об определении значения свойства коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.

Коллбэк движения кнопки Window, заданный как одно из этих значений:

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

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

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

Как правило, эта функция обратного вызова выполняется каждый раз, когда пользователь перемещает указатель в фигуре пользовательского интерфейса. Однако, если пользователь кликает и удерживает кнопку мыши и перемещает указатель вне фигуры пользовательского интерфейса, коллбэк WindowButtonMotionFcn выполняется, в то время как указатель вне фигуры пользовательского интерфейса.

Для получения дополнительной информации об определении значения свойства коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.

Window застегивает коллбэк, заданный как одно из этих значений:

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

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

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

Этот коллбэк выполняется когда пользователь:

  • Отпускает кнопку мыши на пустой области фигуры пользовательского интерфейса

  • Отпускает кнопку мыши на компоненте пользовательского интерфейса в фигуре пользовательского интерфейса, которая поддерживает свойство ButtonDownFcn

  • Отпускает кнопку мыши на графическом объекте в фигуре пользовательского интерфейса, которая поддерживает свойство ButtonDownFcn

Например, отпускание кнопки мыши на объекте axes инициировало коллбэк WindowButtonUpFcn.

См. список свойств для определенного компонента пользовательского интерфейса или графического объекта, чтобы определить, поддерживает ли это свойство ButtonDownFcn. См. Приложения Разработки в App Designer для свойств компонентов пользовательского интерфейса. См. Свойства графического объекта для свойств графических объектов.

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

Примечание

Коллбэк выполняется, когда пользователь отпускает кнопку мыши на компоненте uiaxes, даже при том, что компоненты uiaxes не поддерживают свойство ButtonDownFcn.

Для получения дополнительной информации об определении значения свойства коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.

Коллбэк нажатия клавиши окна, заданный как одно из этих значений:

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

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

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

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

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

СвойствоОписание
Character

Символ, который появляется в результате нажатия клавиши или ключей.

Нажатие определенных клавиш или изменение ключей с ключом Ctrl могут возвратить непечатные символы в этом свойстве.

Нажимание одних только определенных клавиш (таких как Ctrl, Alt, Shift) не генерирует данные Character.

Modifier

Массив ячеек, содержащий имена нажатых модифицирующих клавиш, таких как control, alt или shift. Если никакие модифицирующие клавиши не нажимаются, массив ячеек пуст.

Key

Клавиша, нажатая, идентифицированная строчной меткой на ключе или описательным словом, таким как 'space'.

SourceОбъект, который фокусируется, когда клавиша нажата.
EventName'KeyPress'

Для получения дополнительной информации об определении значений свойств коллбэка и использовании аргументов коллбэка, смотрите Коллбэки Записи в App Designer.

Свойство CurrentCharacter также возвращает символьную информацию.

Коллбэк ключевого релиза окна, заданный как одно из этих значений

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

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

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

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

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

СвойствоОписание
Character

Символ, который соответствует ключу или клавишам, которые отпускаются.

Определенные ключи или сочетания клавиш могут возвратить непечатные символы в этом свойстве.

Нажимание и отпускание одних только определенных клавиш (таких как Ctrl, Alt, Shift) не генерируют данные Character.

Modifier

Массив ячеек, содержащий имена выпущенных модифицирующих клавиш, таких как control, alt или shift. Если никакие модифицирующие клавиши не выпущены, массив ячеек пуст.

Key

Клавиша, отпущенная, идентифицированная (строчной) меткой на ключе или описательным словом, таким как 'space'.

SourceОбъект, который фокусируется, когда клавиша отпускается.
EventName'KeyRelease'

Для получения дополнительной информации об определении значений свойств коллбэка и использовании аргументов коллбэка, смотрите Коллбэки Записи в App Designer.

Коллбэк колесика прокрутки окна, заданный как одно из этих значений:

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

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

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

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

Этот коллбэк не имеет никакого эффекта на свойства CurrentObject и SelectionType.

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

Свойство

Содержимое

VerticalScrollCount

Положительное или отрицательное число, которое указывает на направление и количество нажатий кнопки колесика прокрутки. Прокручивание вниз возвращает положительное значение. Прокрутка возвращает отрицательное значение.

Вертикальное количество прокрутки является суммой всех нажатий кнопки колесика прокрутки, которые произошли с прошлого раза выполняемый коллбэк. Как правило, значением является 1 или -1. Однако количество прокрутки может иметь большее значение, если коллбэк WindowScrollWheelFcn занимает много времени, чтобы возвратиться, или если пользователь вращает колесико прокрутки очень быстро.

VerticalScrollAmount

Постоянное значение 3.

Source

Объект, который выполняет коллбэк.

EventName'WindowScrollWheel'.

Для получения дополнительной информации об определении значений свойств коллбэка и использовании аргументов коллбэка, смотрите Коллбэки Записи в App Designer

Пример: приложение для изменения x - пределы по осям

Этот пример показывает, как создать приложение, которое отображает график. Пользователь может прокрутить, чтобы изменить пределы x - ось. Скопируйте и вставьте следующий код в редактор и запустите его.

function scroll_wheel
% Shows how to use WindowScrollWheelFcn property
%
   f = uifigure('WindowScrollWheelFcn',@figScroll,'Name','Scroll Wheel Demo');
   x = 0:.1:40;
   y = 4.*cos(x)./(x+2);
   a = axes(f); 
   h = plot(a,x,y);
   title(a,'Rotate the scroll wheel')

   function figScroll(~,event)
      if event.VerticalScrollCount > 0 
         xd = h.XData;
         inc = xd(end)/20;
         x = [0:.1:xd(end)+inc];
         re_eval(x)
      elseif event.VerticalScrollCount < 0 
         xd = h.XData;
         inc = xd(end)/20;
         % Don't let xd = 0
         x = [0:.1:xd(end)-inc+.1]; 
         re_eval(x)
      end
   end

   function re_eval(x)
      y = 4.*cos(x)./(x+2);
      h.YData = y;
      h.XData = x;
      a.XLim = [0 x(end)];
      drawnow
   end
end

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

развернуть все

Прерывание обратного вызова, обозначаемое как 'on' или 'off'. Свойство «Прерывание» определяет, можно ли прерывать выполняемый обратный вызов.

Существует два состояния обратного вызова:

  • Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.

  • Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.

Каждый раз, когда MATLAB вызывает обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов (если он существует). Свойство «Прерывание» объекта, имеющего текущий обратный вызов, определяет, разрешено ли прерывание. Свойство «Прерывание» имеет два возможных значения:

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

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

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

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

Примечание

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

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

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

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

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

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

  • Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.

  • Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.

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

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

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

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

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

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

Родительский элемент/Дочерние элементы

развернуть все

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

Родительский объект, возвращенный как корневой объект.

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

Вы не можете добавить или удалить дочерний компонент с помощью свойства Children. Используйте это свойство просмотреть список дочерних элементов или переупорядочить дочерние элементы. Порядок дочерних элементов в этом массиве отражает порядок "от первого до последнего" (порядок размещения) компонентов на экране.

Чтобы добавить дочерний элемент в этот список, установите свойство Parent дочернего компонента к объекту Figure.

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

Видимость указателя на объект, возвращенного как 'off'. Это свойство предоставляет информацию о видимости объекта Figure в его родительском списке дочерних элементов. Поскольку это значение свойства всегда устанавливается в 'off', объект Figure не видим в своем родительском списке дочерних элементов, и это не возвращено функциями, которым доступ возражает путем поиска иерархии объектов или запроса свойств объектов. Эти функции включают gcf, get, findobj, clf и close.

Объекты допустимы, даже если их свойство HandleVisibility установлено в 'off'. Если у вас есть доступ к объекту, можно установить и получить его свойства и передать его любой функции, которая работает с объектами.

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

развернуть все

Имя фигуры, заданной как вектор символов или скаляр строки.

Пример: uifigure('Name','Results') определяет имя фигуры к 'Results'.

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

Количество фигуры, возвращенной как целочисленный или пустой массив. Можно обратиться к фигуре, использующей это значение. Например, figure(2) делает фигуру со значением свойства Number 2 текущей фигурой.

Если свойство IntegerHandle установлено в 'off', свойство Number пусто.

Если IntegerHandle является 'on', свойство Number является целым числом. Когда вы удаляете фигуру, MATLAB снова использует номер для следующей фигуры.

Заголовок номера, заданный как 'on' или 'off'. Когда вы устанавливаете это свойство на 'on', заголовок фигуры пользовательского интерфейса включает фразу 'Figure n', где n является номером.

Оба свойства NumberTitle и IntegerHandle должны собираться в 'on' показать, чтобы показать номер в заголовке.

Используйте целочисленный указатель, заданный как 'off' или 'on'.

Если вы устанавливаете свойство IntegerHandle на 'on', MATLAB находит самое низкое целочисленное значение, которое не используется существующей фигурой и устанавливает свойство Number на то значение. Если вы удаляете фигуру пользовательского интерфейса, MATLAB может снова использовать свой номер на новой фигуре.

Если вы устанавливаете свойство IntegerHandle на 'off', MATLAB не присваивает целочисленное значение фигуре пользовательского интерфейса, и это устанавливает свойство Number на пустой массив.

Чтобы показать номер в строке заголовка, и IntegerHandle и NumberTitle должны быть установлены в 'on'.

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

Тип графического объекта, возвращенного как 'figure'.

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

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

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

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

|

Введенный в R2016a