TabGroup Properties

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

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

fig = uifigure;
tg = uitabgroup(fig);
tg.Position = [20 20 200 200];

Некоторые свойства и значения свойств TabGroup объекты отличаются в зависимости от того, является ли группа вкладки дочерним элементом фигуры, созданной с помощью uifigure функционируйте или figure функция. uifigure функция является рекомендуемой функцией, чтобы использовать при создании новых приложений и является функцией, используемой в приложениях App Designer. Для получения дополнительной информации смотрите Способы Создать Приложения.

Вкладки

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

Местоположение метки вкладки в виде 'top', 'bottom', 'left', или 'right'. Это свойство задает местоположение меток вкладки относительно группы вкладки.

В настоящее время выбранная вкладка в виде Tab объект. Используйте это свойство определить в настоящее время выбранную вкладку в группе вкладки. Можно также использовать это свойство установить выбор вкладки по умолчанию. Значение по умолчанию SelectedTab свойством является первый Tab то, что вы добавляете к TabGroup.

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

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

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

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

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

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

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

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

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

Положение

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

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

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

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

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

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

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

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

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

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

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

Модульное значениеОписание
'pixels' (значение по умолчанию)

Расстояния в пикселях независимы от вашего системного разрешения по Windows® и системы Макинтоша:

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

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

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

'normalized'

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

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

Рекомендуемым значением является 'pixels', потому что большая часть MATLAB® функциональность создания приложений измеряет расстояния в пикселях. Можно создать панель, которая перемасштабирует на основе размера родительского контейнера путем порождения панели менеджеру по размещению сетки, созданному с помощью uigridlayout функция. Для получения дополнительной информации смотрите, Размечают Приложения Программно.

figure- Основанные Приложения

Для групп вкладки в приложениях, созданных с помощью figure функция, значение по умолчанию Units 'normalized'.

Кроме того, можно задать Units как 'characters'. Символьные модули основаны на шрифте uicontrol по умолчанию графического корневого объекта:

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

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

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

Коллбэки

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

Выбор изменил коллбэк в виде одного из этих значений:

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

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

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

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

Эта функция обратного вызова может получить доступ к определенной информации о взаимодействии пользователя с вкладками. MATLAB передает эту информацию в SelectionChangedData возразите в качестве второго аргумента против своей функции обратного вызова. В App Designer аргумент называется событиемВы можете запросить свойства объекта с помощью записи через точку. Например, event.NewValue возвращает в настоящее время выбранную вкладку. SelectionChangedData объект не доступен для функций обратного вызова, заданных как векторы символов.

В следующей таблице перечислены свойства SelectionChangedData объект.

Свойство

Описание

OldValue

Ранее выбрал Tab, или [] если ни один не был выбран

NewValue

В настоящее время выбрал Tab

Source

Компонент, который выполняет обратный вызов

EventName

'SelectionChanged'

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

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

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

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

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

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

Примечание

\in uifigure- основанные приложения, SizeChangedFcn коллбэк не выполнится если AutoResizeChildren свойство этого контейнера установлено в 'off'. В App Designer можно сделать SizeChangedFcn исполняемый файл путем выбора контейнера и снятия флажка AutoResizeChildren во вкладке компонента Component Browser.

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

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

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

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

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

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

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

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

\in uifigure- основанные приложения, альтернативные способы задать поведение при изменении размера состоят в том, чтобы создать GridLayout возразите или используйте опции автообратного течения в App Designer. Эти опции может быть легче использовать, чем SizeChangedFcn коллбэки. Однако существуют некоторые преимущества что SizeChangedFcn коллбэки имеют по этим опциям. Например:

  • Изменение размеров компонента до минимального или максимального размера, который вы задаете.

  • Реализация нелинейных поведений при изменении размера.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

MATLAB определяет поведение прерывания коллбэка каждый раз, когда это выполняет команду, которая обрабатывает очередь коллбэка. Эти команды включают drawnow, figure, uifigure, getframe, waitfor, и pause.

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

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

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

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

Примечание

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

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

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

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

Примечание

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

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

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

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

BusyAction свойство определяет поведение постановки в очередь коллбэка только, когда оба из этих условий соблюдают:

  • Рабочий коллбэк содержит команду, которая обрабатывает очередь коллбэка, такой как drawnow, figure, uifigure, getframe, waitfor, или pause.

  • Значение Interruptible свойством объекта, который владеет рабочим коллбэком, является 'off'.

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

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

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

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

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

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

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

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

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

Родительский контейнер в виде Figure объект создал использование uifigure функция или один из ее дочерних контейнеров: TabПанельГруппа кнопок, или GridLayout. Если никакой контейнер не задан, MATLAB вызывает uifigure функция, чтобы создать новый Figure объект, который служит родительским контейнером.

TabGroup дочерние элементы, возвращенные как пустой GraphicsPlaceholder или одномерный массив Tab объекты.

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

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

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

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

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

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

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

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

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

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

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

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

uifigure- Основанные приложения только

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

Примечание

Это свойство допустимо только для групп вкладки в App Designer и в приложениях, созданных с помощью uifigure функция.

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

Примечание

Это свойство допустимо только для групп вкладки в App Designer и в приложениях, созданных с помощью uifigure функция.

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

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

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

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

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

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

Примечание

Это свойство допустимо только для групп вкладки в App Designer и в приложениях, созданных с помощью uifigure функция.

Параметры макета в виде GridLayoutOptions объект. Это свойство задает опции для компонентов, которые являются дочерними элементами контейнеров макетов сетки. Если компонент не является дочерним элементом контейнера макетов сетки (например, это - дочерний элемент фигуры или панели), то это свойство пусто и не оказывает влияния. Однако, если компонент является дочерним элементом контейнера макетов сетки, можно поместить компонент в желаемую строку и столбец сетки путем установки Row и Column свойства на GridLayoutOptions объект.

Например, этот код размещает группу вкладки в третью строку и второй столбец ее родительской сетки.

g = uigridlayout([4 3]);
tg = uitabgroup(g);
tg.Layout.Row = 3;
tg.Layout.Column = 2;

Чтобы заставить группу вкладки охватить несколько строк или столбцов, задайте Row или Column свойство как двухэлементный вектор. Например, эта группа вкладки охватывает столбцы 2 через 3:

tg.Layout.Column = [2 3];

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

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

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

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

Функции

Свойства

Введенный в R2014b