uibuttongroup

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

Описание

bg = uibuttongroup создает группу кнопок в текущей фигуре и возвращает ButtonGroup объект. Если нет никакой доступной фигуры, MATLAB® вызывает figure функция, чтобы создать ту.

пример

bg = uibuttongroup(Name,Value) задает значения свойств группы кнопок с помощью одного или нескольких аргументов пары "имя-значение".

bg = uibuttongroup(parent) создает группу кнопок в заданном родительском контейнере. Родительский контейнер может быть фигурой, созданной с любым figure или uifigure функция или дочерний контейнер, такой как панель. Значения свойств для uibuttongroup варьируйтесь немного в зависимости от того, создано ли приложение с figure или uifigure функция. Для получения дополнительной информации см. Аргументы в виде пар имя-значение.

пример

bg = uibuttongroup(parent,Name,Value) задает родительский контейнер и одно или несколько значений свойств.

Примеры

свернуть все

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

Скопируйте и вставьте этот код в Редактор и запустите его, чтобы видеть, как это работает.

function myui
bg = uibuttongroup('Visible','off',...
                  'Position',[0 0 .2 1],...
                  'SelectionChangedFcn',@bselection);
              
% Create three radio buttons in the button group.
r1 = uicontrol(bg,'Style',...
                  'radiobutton',...
                  'String','Option 1',...
                  'Position',[10 350 100 30],...
                  'HandleVisibility','off');
              
r2 = uicontrol(bg,'Style','radiobutton',...
                  'String','Option 2',...
                  'Position',[10 250 100 30],...
                  'HandleVisibility','off');

r3 = uicontrol(bg,'Style','radiobutton',...
                  'String','Option 3',...
                  'Position',[10 150 100 30],...
                  'HandleVisibility','off');
              
% Make the uibuttongroup visible after creating child objects. 
bg.Visible = 'on';

    function bselection(source,event)
       disp(['Previous: ' event.OldValue.String]);
       disp(['Current: ' event.NewValue.String]);
       disp('------------------');
    end
end

bselection функционируйте отображает OldValue и NewValue свойства event.

App with three grouped radio buttons labeled Option 1, Option 2, and Option 3. The first button is selected.

Scrollable свойство позволяет прокрутить в группе кнопок, которая имеет компоненты вне ее границ. Прокрутка только возможна, когда группа кнопок находится на рисунке, созданном с uifigure функция. App Designer использует этот тип фигуры для того, чтобы создать приложения.

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

fig = uifigure;
bg = uibuttongroup(fig,'Position',[20 20 196 135]);
tb1 = uitogglebutton(bg,'Position',[11 165 140 22],'Text','One');
tb2 = uitogglebutton(bg,'Position',[11 140 140 22],'Text','Two');
tb3 = uitogglebutton(bg,'Position',[11 115 140 22],'Text','Three');
tb4 = uitogglebutton(bg,'Position',[11 90 140 22],'Text','Four');
tb5 = uitogglebutton(bg,'Position',[11 65 140 22],'Text','Five');
tb6 = uitogglebutton(bg,'Position',[11 40 140 22],'Text','Six');

App with a button group with six toggle buttons. The first, second, and part of the third button are not visible.

Позвольте прокрутить путем установки Scrollable свойство группы кнопок к 'on'. По умолчанию ползунок отображается наверху.

bg.Scrollable = 'on';

Scrollable button group. The scroll bar on the left is scrolled to the top, and all the buttons are visible. The first button is selected.

Входные параметры

свернуть все

Родительский контейнер в виде фигуры, созданной с любым figure или uifigure функция или дочерний контейнер:

  • Панели, вкладки и группы кнопок могут быть контейнерами в любом типе фигуры.

  • Размещения сетки могут быть контейнерами, только в цифрах созданный с uifigure функция.

Аргументы name-value

Пример: uibuttongroup('Title','Options') указывает, что заголовком группы кнопок является Options.

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в одинарных кавычках (' '). Можно задать несколько имен и аргументов пары значения как Name1,Value1,...,NameN,ValueN.

Примечание

Свойства, перечисленные здесь, являются подмножеством доступных свойств. Для полного списка смотрите ButtonGroup Properties.

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

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

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

Цвет фона в виде триплета RGB, шестнадцатеричного цветового кода или одного из перечисленных в таблице параметров цвета.

Триплеты RGB и шестнадцатеричные цветовые коды полезны для определения пользовательских цветов.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или строковым скаляром, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

Sample of the color red

'green''g'[0 1 0]'#00FF00'

Sample of the color green

'blue''b'[0 0 1]'#0000FF'

Sample of the color blue

'cyan' 'c'[0 1 1]'#00FFFF'

Sample of the color cyan

'magenta''m'[1 0 1]'#FF00FF'

Sample of the color magenta

'yellow''y'[1 1 0]'#FFFF00'

Sample of the color yellow

'black''k'[0 0 0]'#000000'

Sample of the color black

'white''w'[1 1 1]'#FFFFFF'

Sample of the color white

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]'#D95319'

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]'#EDB120'

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]'#7E2F8E'

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]'#77AC30'

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]'#4DBEEE'

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]'#A2142F'

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

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

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

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

Например, предположите, что ваша группа кнопок содержит три переключателя, и вы устанавливаете SelectedObject свойство к radiobutton3. MATLAB устанавливает Value свойство для каждого дочернего RadioButton можно следующим образом:

  • radiobutton1.Value = false;

  • radiobutton2.Value = false;

  • radiobutton3.Value = true;

Другими словами, установка SelectedObject свойство оказывает то же влияние как установка Value свойство кнопок в группе кнопок.

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

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

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

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

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

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

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

Свойство

Описание

OldValue

Ранее нажатая кнопка

NewValue

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

Source

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

EventName

'SelectionChanged'

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

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

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

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

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

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

Модульное значениеОписание
'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').

Советы

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

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

  • Чтобы определить, какой переключатель или кнопка-переключатель выбраны, запросите SelectedObject свойство группы кнопок. Можно выполнить этот запрос где угодно в коде.

  • Если вы устанавливаете Visible свойство группы кнопок возражает против 'off', затем любые дочерние объекты, которые это содержит (кнопки, другие группы кнопок, и т.д.) становятся невидимыми наряду с родительской группой кнопок. Однако Visible значение свойства каждого дочернего объекта остается незатронутым.

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

Функции

Свойства

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