Tab Properties

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

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

uf = uifigure;
tg = uitabgroup(uf);
t = uitab(tg);
t.Title = 'Data';

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

Заголовок и цвет

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

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

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

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

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

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

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

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

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

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

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

Подсказка, заданная как вектор символов, массив ячеек из символьных векторов, массив строк или 1D категориальный массив. Используйте это свойство отобразить сообщение, когда пользователь наведет указатель на компонент во время выполнения. Чтобы отобразить несколько строк текста, задайте массив ячеек из символьных векторов или массив строк. Каждый элемент в массиве становится отдельной строкой текста. Если вы задаете это свойство как категориальный массив, MATLAB использует значения в массиве, не полный набор категорий.

Положение

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

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

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

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

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

Примечание

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

  • Значения Position затронуты длиной заголовка вкладки и свойством TabLocation родительского объекта TabGroup.

  • Значения Position относительно drawable area родительского TabGroup, который является областью в ее границах.

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

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

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

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

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

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

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

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

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

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

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

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

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

Коллбэки

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

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

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

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

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

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

Примечание

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

Коллбэк SizeChangedFcn выполняется когда родительский контейнер группы вкладки:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Прерывание обратного вызова, обозначаемое как '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, чтобы убедиться, что объект не будет удален до запроса или изменения.

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

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

Родительский объект, заданный как объект TabGroup. TabGroup должен быть дочерним элементом Figure, созданного с помощью функции uifigure.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Функции

Свойства

Введенный в R2016a