UI Figure Properties

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

Допустимый для фигур, используемых в App Designer или фигурах, создается с функцией uifigure. Для фигур, созданных с функцией figure, смотрите Figure Properties.

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

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

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

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

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

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

ОпцияОписаниеЭквивалентный триплет RGB
'красный' или 'r'Красный[1 0 0]
'green' или 'g'Зеленый[0 1 0]
'blue' или 'b'Синий[0 0 1]
'yellow' или 'y'Желтый[1 1 0]
'пурпурный' или 'm'Пурпурный[1 0 1]
'голубой' или 'c'Голубой[0 1 1]
'white' или 'w'Белый[1 1 1]
'black' или 'k'Черный[0 0 0]
'none'Нет цветаНе применяется

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

  • '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Расстояние между правыми и левыми внутренними краями фигуры пользовательского интерфейса.
высотаРасстояние между верхними и нижними внутренними краями фигуры пользовательского интерфейса.

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

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

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

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

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

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

  • Компоненты 'off' — Child не изменяют размер.

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

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

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

Графическое изображение

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

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

Пример: uifigure ('Палитра', [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'

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

  • Нажатие кнопки управления левая кнопка мыши.

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

открытый

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

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

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

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

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

Общие обратные вызовы

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

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

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

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

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

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

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

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

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

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

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

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

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

Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB создает объект. MATLAB initializes all property values before executing the CreateFcn callback. If you do not specify the CreateFcn property, then MATLAB executes a default creation function.

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

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

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

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

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

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

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

Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB удаляет объект. MATLAB executes the DeleteFcn callback before destroying the properties of the object. If you do not specify the DeleteFcn property, then MATLAB executes a default deletion function.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Modifier

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

Key

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Modifier

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

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 оценивает это выражение в базовом рабочем пространстве.

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

Примечание

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

Обратный вызов SizeChangedFcn выполняется когда:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

Modifier

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

Key

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Modifier

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

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 инициирует обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов. Прерываемое свойство объекта, владеющего рабочим обратным вызовом, определяет, разрешено ли прерывание. Если прерывание не разрешено, то свойство 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 ('Имя', 'Результаты') определяет имя фигуры к 'Результатам'.

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

Количество фигуры, возвращенной как целочисленный или пустой массив. Можно обратиться к фигуре, использующей это значение. Например, 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

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