Tab Properties

Управление внешним видом вкладки в uifigure- основанные на приложениях

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

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

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

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

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

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

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

Если необходимо задать Юникод® символ, передайте код десятичного числа 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', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

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

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

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

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

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

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

Положение

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

Единицы измерения, заданные как 'pixels'.

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

  • 'on' - Размер дочерних компонентов автоматически изменяется при изменении размера контейнера.

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

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

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

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

Коллбэки

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

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

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

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

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

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

Примечание

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

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

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

  • Отображается при изменении его размера.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

См. также

Функции

Свойства

Введенный в R2016a