Tab Properties

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

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

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

f = figure;
tg = uitabgroup(f);
t = uitab;
t.Title = 'Data';

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

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

Заголовок, заданный как вектор символов, представляет в виде строки скаляр или категориальный массив. Если вы задаете это свойство как категориальный массив, 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'

Пример: [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'

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

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

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

Чтобы создать несколько линий текста, используйте sprintf функционируйте, чтобы вставить символы новой строки ('\n') в вашем тексте. Например:

txt = sprintf('Line 1\nLine 2');

Затем установите Tooltip свойство к значению, возвращенному sprintf.

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

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

Примечание

TooltipString свойство не рекомендуется, начиная в R2018b. Используйте Tooltip свойство вместо этого.

Расположение и размер

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

'pixels'.

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

  • В системах 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 использует эти модули, чтобы отобразить местоположение и значения размера в Position свойство.

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

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

Коллбэки

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

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

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

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

  • Вектор символов, содержащий допустимое выражение 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 код, чтобы получить объект компонента, который удаляется.

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

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

Прерывание коллбэка, заданное как 'on' или 'off'. 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, возвращенное как 'off' или 'on'. MATLAB устанавливает BeingDeleted свойство к 'on' когда DeleteFcn коллбэк начинает выполнение. BeingDeleted свойство остается установленным в 'on' пока объект компонента больше не существует.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Введенный в R2014b