Panel Properties

Управляйте внешним видом и поведением панели

Свойства, перечисленные здесь, допустимы для панелей в GUIDE или в приложениях, созданных с figure функция. Если вы используете App Designer или uifigure функционируйте, см. Свойства Panel вместо этого. Для получения дополнительной информации см. Стратегии Миграции GUIDE.

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

f = figure;
p = uipanel(f);
p.Position = [.1 .1 .7 .8];

Заголовок

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

Заголовок в виде вектора символов, строкового скаляра или категориального массива. Если вы задаете это свойство как категориальный массив, MATLAB® отображает только первый элемент в массиве.

MATLAB не интерпретирует вертикальную наклонную черту ('|') символ как разрыв строки, это отображается как вертикальная наклонная черта в заголовке.

Если вы хотите задать символ Unicode®, передайте десятичный код Unicode char функция. Например, ['Multiples of ' char(960)] отображения как Multiples of π.

Местоположение заголовка в виде 'lefttop', 'centertop', 'righttop', 'leftbottom', 'centerbottom', или 'rightbottom'.

Цвет и моделирование

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

Цвет заголовка в виде триплета 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'

Вот являются триплеты 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'

Пример: [0 0 1]

Пример: 'b'

Пример: 'blue'

Цвет фона в виде триплета 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'

Вот являются триплеты 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'

Тип границы в виде 'etchedin''none', 'etchedout', 'beveledin', 'beveledout', или 'line'.

  • Для 3-D внешнего вида используйте вытравленные или скошенные границы.

    Используйте HighlightColor и ShadowColor свойства задать цвет 3-D границ.

  • Для более простого внешнего вида используйте границу линии.

    Используйте HighlightColor свойство задать цвет рамки линии.

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

Ограничьте цвет подсветки в виде триплета 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'

Вот являются триплеты 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'

Ограничьте цвет тени в виде триплета 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'

Вот являются триплеты 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'

Примечание

Поведение Clipping свойство изменилось. Это больше не оказывает влияния на Panel объекты. Дочерние объекты теперь отсекаются к контурам их родительского контейнера независимо от значения этого свойства. Это свойство может быть удалено в будущем релизе.

Шрифт

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

Название шрифта в виде системы поддержало название шрифта или 'FixedWidth'Шрифт по умолчанию зависит от конкретной операционной системы и локали.

Чтобы использовать шрифт фиксированной ширины, который выглядит хорошим в любой локали, задайте 'FixedWidth'. Фактический используемый шрифт фиксированной ширины зависит от FixedWidthFontName свойство корневого объекта. Изменение FixedWidthFontName свойство заставляет незамедлительное обновление отображения использовать новый шрифт.

Пример: 'Arial'

Размер шрифта, заданный в виде положительного числа. FontUnits свойство задает модули. Размер по умолчанию системно-зависим.

Пример: 12

Пример: 12.5

Толщина шрифта в виде значения из следующей таблицы.

  • 'normal' — Вес по умолчанию, как задано конкретным шрифтом

  • 'bold' — Более толстые символьные основы, чем нормальный

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

Примечание

'light' и 'demi' значения толщины шрифта были удалены в R2014b. Если вы задаете любое из этих значений, результатом является обычная толщина шрифта.

Угол шрифта в виде 'normal' или 'italic'. MATLAB использует это свойство выбрать шрифт от доступных в вашей системе. Установка этого свойства к 'italic' выбирает наклонную версию шрифта, если это доступно в вашей системе.

Примечание

'oblique' значение было удалено. Используйте 'italic' вместо этого.

Модули шрифта в виде одного из значений из этой таблицы.

Модульное значениеОписание
'points''points'. Одна точка является 1/72-й из дюйма.
'normalized'Нормированные значения для определения размера шрифта как часть высоты. Когда вы изменяете размер компонента пользовательского интерфейса, MATLAB масштабирует отображенный шрифт, чтобы обеспечить ту часть.
'inches''inches'.
'centimeters''centimeters'.
'pixels'

'pixels'.

Начиная с версии R2015b, значения размеров в пикселях не зависят от вашего системного разрешения в системах Windows® и Macintosh:

  • В системах Windows пиксель составляет 1/72 дюйма.

  • В системах Macintosh пиксель составляет 1/72 дюйма.

В системах Linux® размер пикселя определяется вашим системным разрешением.

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

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

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

  • 'on' — Отобразите объект.

  • 'off' — Скройте объект, не удаляя его. Все еще можно получить доступ к свойствам невидимого компонента пользовательского интерфейса.

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

Изменение размера невидимого контейнера инициировало SizeChangedFcn коллбэк, когда это становится видимым.

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

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

Примечание

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

Примечание

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

Положение

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

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

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

Все измерения находятся в модулях, заданных Units свойство.

Примечание

Position значения относительно drawable area родительского контейнера. Область векторной и растровой графики является областью в границах контейнера и не включает область, занятую заголовком. Если родительский контейнер является фигурой, то область векторной и растровой графики также исключает панель меню и панель инструментов.

Пример: Изменение одного значения в радиус-векторе

Можно объединить запись через точку и индексацию массива, когда это необходимо, чтобы изменить одно значение в Position вектор. Например, этот код изменяет ширину панели к 0.5:

p = uipanel;
p.Position(3) = 0.5;
p.Position
ans =

      0   0   0.5000  1.0000

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

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

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

Все измерения находятся в модулях, заданных Units свойство.

Примечание

Это некоторые важные моменты, чтобы рассмотреть при использовании InnerPosition свойство:

  • InnerPosition значения затронуты присутствием заголовка, характеристик шрифта, BorderType, и BorderWidth.

  • InnerPosition значения относительно drawable area родительского контейнера. Областью векторной и растровой графики является область в границах контейнера, и исключите область, занятую заголовком. Если родительский контейнер является фигурой, то область векторной и растровой графики также исключает панель меню и панель инструментов.

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

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

Единицы измерения, заданные одно из значений из этой таблицы.

Модульное значениеОписание
'normalized'Эти модули нормированы относительно родительского контейнера. Нижний левый угол контейнера сопоставляет с (0,0) и верхний правый угол сопоставляет с (1,1).
'pixels'

'pixels'.

Начиная в R2015b, расстояния в пикселях независимы от вашего системного разрешения по системам Макинтоша и Windows:

  • В системах Windows пиксель составляет 1/72 дюйма.

  • В системах Macintosh пиксель составляет 1/72 дюйма.

В системах Linux размер пикселя определяется вашим системным разрешением.

'inches''inches'.
'centimeters''centimeters'.
'points''points'. Одна точка равняется 1/72-й из дюйма.
'characters'

Эти модули основаны на шрифте uicontrol по умолчанию графического корневого объекта:

  • Ширина символов = ширина буквы x.

  • Высота символа = расстояние между базовыми линиями двух строк текста.

Чтобы получить доступ к шрифту uicontrol по умолчанию, используйте get(groot,'defaultuicontrolFontName') или set(groot,'defaultuicontrolFontName').

MATLAB измеряет все модули от левого нижнего угла родительского объекта.

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

Порядок, в котором вы задаете свойства Units и Position, оказывает эти влияния:

  • Если вы задаете Units свойство перед Position свойство, затем MATLAB устанавливает Position с помощью модулей вы задали.

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

Коллбэки

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

Функция обратного вызова изменения размера в виде одного из этих значений:

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

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

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

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

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

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

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

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

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

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

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

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

Совет

Как легкая альтернатива определению SizeChangedFcn коллбэк, можно установить Units свойство всех объектов вы вставляете контейнер к 'normalized'. Выполнение так заставляет те компоненты масштабироваться пропорционально с контейнером.

Смотрите Размечают пользовательский интерфейс Программно для получения дополнительной информации о размещениях управления с SizeChangedFcn коллбэки.

Функция обратного вызова нажатия кнопки в виде одного из этих значений:

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

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

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

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

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

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

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

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

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

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

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

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

Установка CreateFcn свойство на существующем объекте компонента не оказывает влияния.

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

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

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

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

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

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

Используйте gcbo функционируйте в своем DeleteFcn код, чтобы получить объект компонента, который удаляется.

Измените размер функции обратного вызова в виде одного из этих значений:

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

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

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

Примечание

Использование ResizeFcn свойство не рекомендуется. Это может быть удалено в будущем релизе. Используйте SizeChangedFcn вместо этого.

Типы данных: function_handle | cell | char

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

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

Смотрите Выполнение обратного вызова Прерывания для примера, который показывает как Interruptible и BusyAction свойства влияют на поведение программы.

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

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

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

BusyAction свойство источника прерывания обратного вызова определяет, как MATLAB обрабатывает свое выполнение. BusyAction свойство имеет эти значения:

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

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

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

  • on — Прерывание происходит на следующем этапе, где MATLAB обрабатывает очередь. Это значение по умолчанию.

  • offBusyAction свойство (объекта, владеющего прерыванием обратного вызова), определяет, ставит ли MATLAB в очередь или игнорирует прерывание обратного вызова.

Смотрите Выполнение обратного вызова Прерывания для примера, который показывает как BusyAction и Interruptible свойства влияют на поведение программы.

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

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

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

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

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

  • 'on' — Устанавливает текущий объект на Panel когда пользователь кликает по компоненту в запущенном приложении. Оба CurrentObject свойство Figure и gco функциональный возврат Panel как текущий объект.

  • 'off' — Устанавливает текущий объект быть самым близким предком Panel чей HitTest 'on' когда пользователь кликает по компоненту в запущенном приложении.

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

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

Родительский объект в виде FigureПанельГруппа кнопок, или Tab объект. Используйте это свойство задать родительский контейнер при создании компонента пользовательского интерфейса или переместить существующий компонент пользовательского интерфейса в различный родительский контейнер.

Дочерние элементы панели, возвращенные как пустой GraphicsPlaceholder или 1D массив объектов компонента. Дочерние элементы Panel объектами может быть AxesПанельГруппа кнопок, или любой стиль UIControl объекты.

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

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

Объекты с HandleVisibility набор свойств к 'off' не перечислены в Children свойство.

Видимость указателя на объект в виде 'on''callback', или 'off'.

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

Значение HandleVisibilityОписание
'on'Указатель на объект всегда отображается.
'callback'Указатель на объект отображается из коллбэков или функций, вызванных коллбэками, но не из функций, вызванных из командной строки. Эта опция блокирует доступ к объекту в командной строке, но позволяет обратным вызовам обращаться к нему.
'off'Указатель на объект невидим в любом случае. Эта опция предназначена для предотвращения непреднамеренных изменений в пользовательском интерфейсе другой функцией. Установите HandleVisibility к 'off' временно скрыть указатель во время выполнения этой функции.

Установите графический корневой ShowHiddenHandles свойство к 'on' сделать все указатели видимыми, независимо от их HandleVisibility значение. Эта установка не оказывает влияния на их HandleVisibility значения.

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

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

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

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

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

Пользовательские данные в виде любого массива. Определение UserData может быть полезно для обмена данными в рамках приложений. Смотрите Осуществляют обмен данными Среди Коллбэков для получения дополнительной информации.

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

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

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

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