ButtonGroup Properties

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

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

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

f = figure;
b = uibuttongroup(f);
b.BackgroundColor = [.5 .5 .5];

Заголовок

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

Заголовок, заданный как вектор символов, представляет в виде строки скаляр или категориальный массив. Если вы задаете это свойство как категориальный массив, 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 изменилось. Это больше не имеет эффекта на объекты ButtonGroup. Дочерние объекты теперь отсекаются к контурам их родительского контейнера независимо от значения этого свойства. Это свойство может быть удалено в будущем релизе.

Шрифт

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

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

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

Пример: 'Arial'

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

Пример: 12

Пример: 12.5

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

  • normal' — Насыщенность по умолчанию, определяемая конкретным видом шрифта

  • 'bold' — более тонкие контуры символов, чем 'normal'

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'. Свойство Visible определяет, отображается ли группа кнопок на экране. Если свойство Visible установлено в 'off', целая группа кнопок невидима, но можно все еще задать и получить доступ к ее свойствам.

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

Примечание

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

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

В настоящее время установленный переключатель или кнопка-переключатель, заданная как объект UIControl.

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

Значение по умолчанию свойства SelectedObject является первым переключателем или кнопкой-переключателем, которую вы добавляете в группу кнопок.

Примечание

Коллбэк SelectionChangedFcn не выполняется, когда вы устанавливаете свойство SelectedObject программно.

Примечание

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

Примечание

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

Положение

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

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

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

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

Примечание

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

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

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

b = uibuttongroup;
b.Position(3) = 0.5;
b.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 в эквивалентные стоимости в модулях, которые вы задали.

Коллбэки

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

Примечание

Имя этого свойства, измененного от SelectionChangeFcn до SelectionChangedFcn в R2014b.

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

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

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

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

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

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

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

Свойство

Описание

OldValue

Ранее нажатая кнопка или [], если ни один не был выбран

NewValue

В настоящее время нажатая кнопка

Source

Родительский объект ButtonGroup

EventName

'SelectionChanged'

Задайте коллбэк SelectionChangedFcn, чтобы заставить вашу программу ответить, когда пользователь нажмет различные кнопки в группе кнопок. Не кодируйте ответ в отдельных функциях обратного вызова компонента.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Совет

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

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

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

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

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

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

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

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

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

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

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

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

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

Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB создает компонент. MATLAB инициализирует все значения свойства компонентов прежде, чем выполнить коллбэк CreateFcn. Если вы не задаете свойство 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'. Свойство «Прерывание» определяет, можно ли прерывать выполняемый обратный вызов.

Существует два состояния обратного вызова:

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Способность стать текущим объектом, заданным как 'on' или 'off':

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

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

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

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

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

Дочерние элементы ButtonGroup, возвращенные как пустой GraphicsPlaceholder или 1D массив объектов компонента. Несмотря на то, что группа кнопок справляется только с выбором переключателей и кнопок-переключателей, его дочерние элементы могут быть экземплярами Axes, Panel, ButtonGroup или любого стиля объектов UIControl.

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

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

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

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

Это свойство управляет видимостью указателя ButtonGroup в его родительском списке дочерних элементов. Когда указатель не видим в своем родительском списке дочерних элементов, он не возвращен функциями, которые получают указатели путем поиска иерархии объектов или запроса свойств указателя. Эти функции включают get, findobj, gca, gcf, gco, newplot, cla, clf и close. Свойство HandleVisibility также управляет видимостью указателя объекта в свойстве CurrentObject родительской фигуры. Указатели все еще допустимы, даже если они не видимы. Если вы знаете указатель объекта, можно установить и получить его свойства и передать его любой функции, которая работает с указателями.

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

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

Примечание

Не пытайтесь получить доступ к переключателям и кнопкам-переключателям, которые управляемы uibuttongroup за пределами группы кнопок. Установите HandleVisibility тех переключателей и кнопок-переключателей к 'off' предотвращать случайный доступ.

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

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

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

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

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

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

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