exponenta event banner

uicontrol

Создание элемента управления пользовательского интерфейса

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

Описание

c = uicontrol создает кнопку (элемент управления пользовательского интерфейса по умолчанию) на текущем рисунке и возвращает UIControl объект. Если цифра не существует, MATLAB ® вызывает figure для создания функции.

пример

c = uicontrol(Name,Value) создает элемент управления пользовательского интерфейса со значениями свойств, заданными с помощью одного или нескольких аргументов пары имя-значение. Например, 'Style','checkbox' создает флажок.

c = uicontrol(parent) создает элемент управления пользовательским интерфейсом по умолчанию в указанном родительском элементе вместо значения по умолчанию для текущей фигуры.

пример

c = uicontrol(parent,Name,Value) задает родительский элемент управления пользовательского интерфейса и один или несколько аргументов пары имя-значение.

пример

uicontrol(c) дает фокус на ранее определенном элементе управления пользовательского интерфейса.

Примеры

свернуть все

Создайте переключатель, указав 'Style' аргумент пары имя-значение как 'radiobutton'. Пометить переключатель, указав значение для 'String' аргумент пары имя-значение.

c = uicontrol('Style','radiobutton','String','Option 1');

Создайте фигуру и панель, расположенные внутри нее. Затем создайте ползунок в пределах панели, вызвав uicontrol с панелью, указанной как родительская и 'Style' указано как 'slider'. Затем установите ползунок Value свойство для 0.5.

f = figure;
p = uipanel(f,'Position',[0.1 0.1 0.35 0.65]);
c = uicontrol(p,'Style','slider');
c.Value = 0.5;

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

Сохранить этот код как mytemps.m. Этот код создает окно фигуры с всплывающим меню, содержащим три элемента списка. Затем он использует функцию обратного вызова для запроса Value и String свойства всплывающего меню и отображает выбранный элемент в командной строке.

function mytemps
f = figure;
c = uicontrol(f,'Style','popupmenu');
c.Position = [20 75 60 20];
c.String = {'Celsius','Kelvin','Fahrenheit'};
c.Callback = @selection;

    function selection(src,event)
        val = c.Value;
        str = c.String;
        str{val};
        disp(['Selection: ' str{val}]);
    end

end

Запустите программу для создания рисунка и его содержимого.

mytemps

Выберите другой пункт меню, чтобы изменить выбор. Например, если во всплывающем меню выбрать «Кельвин», в командной строке отобразится текст Selection: Kelvin.

Создайте кнопку, отображающую данные при нажатии.

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

function pushbuttonPlot
f = figure;
ax = axes(f);
ax.Units = 'pixels';
ax.Position = [75 75 325 280]
c = uicontrol;
c.String = 'Plot Data';
c.Callback = @plotButtonPushed;

    function plotButtonPushed(src,event)
        bar(randn(1,5));
    end

end

Управляемый pushbuttonPlotи нажмите кнопку. MATLAB строит график данных.

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

c = uicontrol('Style','edit');
uicontrol(c);

Входные аргументы

свернуть все

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

Объект управления пользовательским интерфейсом, указанный как UIControl объект. Этот аргумент используется для указания ранее определенного элемента управления пользовательского интерфейса, который необходимо включить в фокус.

Пример: uicontrol(c)

Аргументы пары «имя-значение»

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

Пример: uicontrol('Style','checkbox') задает флажок в качестве стиля элемента управления пользовательского интерфейса.

Примечание

Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства UIControl.

Стиль UIControl , указанный как значение из следующей таблицы.

Значение свойства стиляПримерОписание
'pushbutton'Push buttonКнопка, которая нажимается до тех пор, пока не будет отпущена кнопка мыши.
'togglebutton'

Selected toggle button
Cleared toggle button

Кнопка, которая выглядит как кнопка, но визуально указывает на ее состояние: выбрана или снята.
'checkbox'

Selected check box
Cleared check box

Параметр, который можно выбрать или удалить независимо.
'radiobutton'

Selected radio button
Cleared radio button

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


Чтобы реализовать взаимоисключающее поведение для набора переключателей, поместите их в uibuttongroup.

'edit'

Editable text field that says, "Enter search term"

Редактируемое текстовое поле.


Чтобы включить несколько строк текста, установите Max и Min свойства так, что Max-Min > 1.

'text'

Static text field that says, "Select an item below:"

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


Чтобы статический текст отвечал на щелчки мыши, установите Enable свойство для 'Inactive' и кодировать ответ с помощью ButtonDownFcn обратный вызов.

'slider'

Slider with the thumb at the leftmost location

Кнопка «Большой палец», которую пользователь перемещает вдоль горизонтальной или вертикальной полосы. Расположение кнопки вдоль полосы указывает на значение в указанном диапазоне.

'listbox'

List box with three items

Список элементов, из которых пользователь может выбрать один или несколько элементов. В отличие от всплывающих меню, список не расширяется при щелчке.


Чтобы включить множественный выбор элементов, установите Max и Min свойства так, что Max-Min > 1. Чтобы отложить действие при выборе нескольких элементов из списка, можно связать кнопку Готово со списком. Затем используйте обратный вызов для этой кнопки, чтобы вычислить поле списка Value собственность.

'popupmenu'

Pop-up menu with three items

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

'frame' 'frame' не рекомендуется. Использовать uipanel или uibuttongroup вместо кадров. GUIDE продолжает поддерживать фреймы в пользовательских интерфейсах, которые их содержат, но компонент фрейма не отображается в палитре компонентов GUIDE LAYOUT Editor.

Текст для отображения, заданный как символьный вектор, массив ячеек из символьных векторов, строковый массив, категориальный массив или вектор строки с разделителями. Style свойство определяет формат массива, который можно использовать.

Свойство стиляПоддерживаемые форматы массивовПримеры
'pushbutton'

Символьный вектор


Массив ячеек символьных векторов


Строковый массив


Категориальный массив

'Option 1'


{'Option 1'}


"Option 1"


categorical({'Option 1'})

'togglebutton'
'checkbox'
'radiobutton'
'edit'
'text'
'listbox'

Символьный вектор


Массив ячеек символьных векторов


Строковый массив


Категориальный массив


Вектор строки с разделителями-трубами

'One'


{'One','Two','Three'}


["One" "Two" "Three"]


categorical({'one','two','three'})


'One|Two|Three'

'popupmenu'

Примечание

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

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

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

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

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

Свойство стиляОписание свойства Value
'togglebutton'
  • Выбрано: Значение Max собственность.

  • Очищено: Значение Min собственность.

'checkbox'
  • Выбрано: Значение Max собственность.

  • Очищено: Значение Min собственность.

'radiobutton'
  • Выбрано: Значение Max собственность.

  • Очищено: Значение Min собственность.

'slider'Значение, связанное с расположением ползунка вдоль ползунка.
'listbox'Индекс массива, соответствующий выбранному элементу в списке. Значение 1 (по умолчанию) соответствует первому элементу списка. При выборе нескольких элементов Value свойство сохраняет индексы строк в виде вектора.
'popupmenu'Индекс массива, соответствующий выбранному элементу во всплывающем меню. Значение 1 (по умолчанию) соответствует первому пункту всплывающего меню.
Представлен до R2006a