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

Выберите различный пункт меню, чтобы изменить выбор. Например, если вы выбираете "Kelvin" из всплывающего меню, командная строка затем отображает текст 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Группа кнопок, или Tab объект. Используйте этот аргумент, чтобы задать родительский контейнер при создании управления пользовательским интерфейсом.

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

Пример: uicontrol(c)

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

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

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

Примечание

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

Стиль 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

Опция, которая предназначается, чтобы явиться частью группы, такой, что, когда выбрано, это очищает другие опции в группе.


Чтобы реализовать взаимоисключающее поведение для набора переключателей, разместите их в a 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 'callback'.

'slider'

Slider with the thumb at the leftmost location

Кнопка "Thumb", что пользователь проходит горизонтальная или вертикальная панель. Местоположение кнопки вдоль панели указывает на значение в заданной области.

'listbox'

List box with three items

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


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

'popupmenu'

Pop-up menu with three items

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

'frame''frame' опция не рекомендуется. Использование uipanel или uibuttongroup вместо систем координат. GUIDE продолжается к опорным рамам в UIs, которые содержат их, но компонент системы координат не появляется в Редакторе Компоновки GUIDE палитра элементов.

Текст, чтобы отобразиться в виде вектора символов, массива ячеек из символьных векторов, массива строк, категориального массива или разграниченного трубопроводом вектора-строки. 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 стили.

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

  • Очищенный: значение Min свойство.

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

  • Очищенный: значение Min свойство.

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

  • Очищенный: значение Min свойство.

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