Создание элемента управления пользовательского интерфейса
Используйте эту функцию только для приложений, созданных с помощью figure функции или с GUIDE. App Designer - это рекомендуемая среда для создания приложений. Дополнительные сведения см. в разделе Стратегии миграции GUIDE.
c = uicontrol создает кнопку (элемент управления пользовательского интерфейса по умолчанию) на текущем рисунке и возвращает UIControl объект. Если цифра не существует, MATLAB ® вызывает figure для создания функции.
c = uicontrol( создает элемент управления пользовательского интерфейса со значениями свойств, заданными с помощью одного или нескольких аргументов пары имя-значение. Например, Name,Value)'Style','checkbox' создает флажок.
c = uicontrol( создает элемент управления пользовательским интерфейсом по умолчанию в указанном родительском элементе вместо значения по умолчанию для текущей фигуры.parent)
c = uicontrol( задает родительский элемент управления пользовательского интерфейса и один или несколько аргументов пары имя-значение.parent,Name,Value)
Создайте переключатель, указав '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);
![]()
parent - Родительский объектFigure объект | Panel объект | ButtonGroup объект | Tab объектРодительский объект, указанный как Figure объект, созданный с помощью figure функция или в качестве одного из нижестоящих контейнеров: Panel, ButtonGroup, или Tab объект. Этот аргумент используется для указания родительского контейнера при создании элемента управления пользовательского интерфейса.
c - Объект управления пользовательского интерфейсаUIControl объектОбъект управления пользовательским интерфейсом, указанный как UIControl объект. Этот аргумент используется для указания ранее определенного элемента управления пользовательского интерфейса, который необходимо включить в фокус.
Пример: uicontrol(c)
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
uicontrol('Style','checkbox') задает флажок в качестве стиля элемента управления пользовательского интерфейса.Примечание
Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства UIControl.
'Style' - Стиль UIControl объект'pushbutton' (по умолчанию) | 'togglebutton' | 'checkbox' | 'radiobutton' | ...Стиль UIControl , указанный как значение из следующей таблицы.
| Значение свойства стиля | Пример | Описание |
|---|---|---|
'pushbutton' | Кнопка, которая нажимается до тех пор, пока не будет отпущена кнопка мыши. | |
'togglebutton' |
| Кнопка, которая выглядит как кнопка, но визуально указывает на ее состояние: выбрана или снята. |
'checkbox' |
| Параметр, который можно выбрать или удалить независимо. |
'radiobutton' |
| Опция, которая предназначена для формирования части группы, так что при выборе она очищает другие опции в группе. Чтобы реализовать взаимоисключающее поведение для набора переключателей, поместите их в |
'edit' |
| Редактируемое текстовое поле. Чтобы включить несколько строк текста, установите |
'text' |
| Статическое текстовое поле. Статический текст используется для маркировки других элементов управления пользовательского интерфейса, предоставления информации пользователю или указания значений, связанных с ползуном. Чтобы статический текст отвечал на щелчки мыши, установите |
'slider' |
| Кнопка «Большой палец», которую пользователь перемещает вдоль горизонтальной или вертикальной полосы. Расположение кнопки вдоль полосы указывает на значение в указанном диапазоне. |
'listbox' |
| Список элементов, из которых пользователь может выбрать один или несколько элементов. В отличие от всплывающих меню, список не расширяется при щелчке. Чтобы включить множественный выбор элементов, установите |
'popupmenu' |
| Всплывающее меню (также называемое раскрывающимся меню), которое разворачивается для отображения списка вариантов. При закрытии всплывающее меню показывает текущий вариант. Используйте всплывающие меню, если требуется предоставить ряд взаимоисключающих вариантов. |
'frame' | 'frame' не рекомендуется. Использовать uipanel или uibuttongroup вместо кадров. GUIDE продолжает поддерживать фреймы в пользовательских интерфейсах, которые их содержат, но компонент фрейма не отображается в палитре компонентов GUIDE LAYOUT Editor. | |
'String' - Текст для отображенияТекст для отображения, заданный как символьный вектор, массив ячеек из символьных векторов, строковый массив, категориальный массив или вектор строки с разделителями. Style свойство определяет формат массива, который можно использовать.
| Свойство стиля | Поддерживаемые форматы массивов | Примеры |
|---|---|---|
'pushbutton' | Символьный вектор Массив ячеек символьных векторов Строковый массив Категориальный массив |
|
'togglebutton' | ||
'checkbox' | ||
'radiobutton' | ||
'edit' | ||
'text' | ||
'listbox' | Символьный вектор Массив ячеек символьных векторов Строковый массив Категориальный массив Вектор строки с разделителями-трубами |
|
'popupmenu' |
Примечание
При указании массива ячеек или категориального массива для кнопки, переключателя, флажка или переключателя MATLAB отображает только первый элемент массива.
'Position' - Местоположение и размер[20 20 60 20] (по умолчанию) | [left bottom width height]Местоположение и размер, указанные как четырехэлементный вектор формы [left bottom width height]. Единицы измерения по умолчанию - в пикселях. Таблица описывает каждый элемент вектора.
| Элемент | Описание |
|---|---|
left | Расстояние от внутреннего левого края родительского контейнера до внешнего левого края элемента управления пользовательского интерфейса. |
bottom | Расстояние от внутреннего нижнего края родительского контейнера до внешнего нижнего края элемента управления пользовательского интерфейса. |
width | Расстояние между правым и левым внешними краями элемента управления пользовательского интерфейса. |
height | Расстояние между верхним и нижним внешними краями элемента управления пользовательского интерфейса. |
Position значения относятся к области извлечения родительского контейнера. Извлекаемая область представляет собой область внутри границ контейнера и не включает область, занимаемую заголовком. Если родительский контейнер является рисунком, область извлечения также исключает строку меню и панель инструментов.
'Value' - Текущее значениеТекущее значение, указанное как число. Используется для запроса или изменения состояния определенных элементов управления пользовательского интерфейса. Таблица описывает Value свойство в отношении конкретного UIControl стили.
| Свойство стиля | Описание свойства Value |
|---|---|
'togglebutton' |
|
'checkbox' |
|
'radiobutton' |
|
'slider' | Значение, связанное с расположением ползунка вдоль ползунка. |
'listbox' | Индекс массива, соответствующий выбранному элементу в списке. Значение 1 (по умолчанию) соответствует первому элементу списка. При выборе нескольких элементов Value свойство сохраняет индексы строк в виде вектора. |
'popupmenu' | Индекс массива, соответствующий выбранному элементу во всплывающем меню. Значение 1 (по умолчанию) соответствует первому пункту всплывающего меню. |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.