Создайте компонент кнопки
создает кнопку в новом окне рисунка и возвращает kb
= uiknobKnob
объект. MATLAB® вызывает uifigure
функция, чтобы создать фигуру.
задает стиль кнопки.kb
= uiknob(style
)
задает свойства объектов с помощью одного или нескольких kb
= uiknob(___,Name,Value
)Name,Value
парные аргументы. Используйте эту опцию с любыми комбинациями входных аргументов в предыдущих синтаксисах.
fig = uifigure; kb = uiknob(fig);
Задайте Figure
возразите как родительский контейнер.
fig = uifigure('Position',[100 100 300 250]); kb = uiknob(fig,'discrete');
Создайте непрерывную кнопку на рисунке.
fig = uifigure; kb = uiknob(fig);
Определите пределы кнопки.
limits = kb.Limits
limits = 0 100
Измените пределы и значение кнопки.
kb.Limits = [-10 10]; kb.Value = 5;
Создайте дискретную кнопку.
fig = uifigure;
kb = uiknob(fig,'discrete');
Измените состояния кнопки. Сопоставьте определенные данные с состояниями кнопки путем конфигурирования ItemsData
. В этом случае, ItemsData
отражает температуры в градусах Фаренгейт.
kb.Items = {'Cold', 'Warm', 'Hot'}; kb.ItemsData = {32, 80, 212};
Получите температуру, сопоставленную с текущим значением кнопки.
degrees = kb.Value
degrees = 32
Создайте дискретную кнопку, которая выполняет действие после того, как пользователь приложения поворачивает его. Превращение кнопки обновляет значение текстового поля, чтобы отразить выбор пользователя приложения.
Скопируйте и вставьте следующий код в файл с именем displayknobvalue.m
на вашем пути MATLAB. Этот код создает окно, содержащее дискретную кнопку и текстовое поле. Это задает ValueChangedFcn
коллбэк, чтобы обновить текстовое поле, когда кнопка превращена.
function displayKnobValue % Create figure window fig = uifigure('Position',[100 100 283 275]); % Create the text field txt = uieditfield(fig,'text',... 'Position', [69 82 100 22]); % Create the knob kb = uiknob(fig,'discrete',... 'Position',[89 142 60 60],... 'ValueChangedFcn',@(kb,event) knobTurned(kb,txt)); end % Code the knob callback function function knobTurned(knob,txt) txt.Value = knob.Value; end
Запустите displayKnobValue
, и затем поверните кнопку. Когда вы отпускаете кнопку мыши, поле редактирования обновляется, чтобы отразить новое значение кнопки.
Создайте непрерывную кнопку, которая выполняет действие после того, как пользователь поворачивает его. Превращение кнопки обновляет значение метки, чтобы отразить выбор пользователя.
Скопируйте и вставьте следующий код в файл с именем showknobvalue.m
на вашем пути MATLAB. Этот код создает окно, содержащее непрерывную кнопку и поле метки. Это задает ValueChangedFcn
коллбэк, чтобы обновить метку, когда кнопка превращена.
function showKnobValue % Create figure window and components fig = uifigure('Position',[100 100 283 275]); % Create label lbl = uilabel(fig,... 'Position',[218 177 50 15],... 'Text','0'); % Create knob kb = uiknob(fig,... 'Position',[89 142 60 60],... 'ValueChangedFcn', @(kb,event) knobTurned(kb,lbl)); end % Create ValueChangedFcn callback function knobTurned(kb,lbl) num = kb.Value; lbl.Text = num2str(num); end
Запустите showKnobValue
и поверните кнопку. Когда вы отпускаете кнопку мыши, метка обновляется, чтобы отразить новое значение кнопки.
Создайте непрерывную кнопку, которая неоднократно выполняет действие, когда пользователь поворачивает его. Вместо того, чтобы обновить метку однажды, когда пользователь отпускает кнопку мыши, эта кнопка обновляет метку, когда кнопка превращается.
Скопируйте и вставьте следующий код в файл с именем showchangingvalue.m
на вашем пути MATLAB. Этот код создает окно, содержащее непрерывную кнопку и поле метки. Это задает ValueChangingFcn
коллбэк, чтобы продолжить обновлять метку как кнопку превращается.
function showChangingValue % Create figure window fig = uifigure('Position',[100 100 283 275]); % Create numeric edit field num = uieditfield(fig,'numeric',... 'Position',[69 82 100 20]); % Create knob kb = uiknob(fig,... 'Position',[89 142 60 60],... 'ValueChangingFcn',@(kb,event) knobTurned(kb,event,num)); end % Create ValueChangingFcn callback function knobTurned(kb,event,num) num.Value = event.Value; end
Запустите showChangingValue
, и поверните кнопку. Когда вы делаете так, числовое поле редактирования обновляется, чтобы показать изменяющиеся значения кнопки.
Создайте непрерывную кнопку, которая выполняет действие после того, как пользователь поворачивает его. каждый поворот кнопки заставляет MATLAB выполнять вычисление с помощью текущих и предыдущих значений кнопки.
Скопируйте и вставьте следующий код в файл с именем increaseOnly.m
на вашем пути MATLAB. Этот код создает окно, содержащее непрерывную кнопку. Это задает ValueChangedFcn
коллбэк для кнопки, чтобы отобразить диалоговое окно Invalid Value, когда пользователь приложения пытается уменьшить значение кнопки.
function increaseOnly % Create figure window fig = uifigure('Position',[100 100 400 275]); % Create knob kb = uiknob(fig,... 'Position',[150 125 60 60],... 'ValueChangedFcn',@(kb,event) nValChanged(kb,event,fig)); end % Create ValueChangedFcn callback function nValChanged(kb,event,fig) newvalue = event.Value; previousvalue = event.PreviousValue; if previousvalue > newvalue uialert(fig, 'Increase value only. Value reverted to previous value.', ... 'Invalid Value'); kb.Value = previousvalue; end end
Запустите increaseOnly
, увеличьте значение кнопки, и затем попытайтесь уменьшить его. Когда вы пытаетесь уменьшить значение, ошибочное диалоговое окно отображается, и значение вернулось к предыдущему допустимому значению. Можно только увеличить значение кнопки.
style
— Стиль кнопки'continuous'
(значение по умолчанию) | 'discrete'
Стиль кнопки в виде одного из следующих значений:
Стиль | Внешний вид |
---|---|
'continuous' |
|
'discrete' |
|
parent
— Родительский контейнерFigure
объект (значение по умолчанию) | Panel
возразите | Tab
возразите | ButtonGroup
возразите | GridLayout
объектРодительский контейнер в виде Figure
объект создал использование uifigure
функция или один из ее дочерних контейнеров: Tab
Панель
Группа кнопок
, или GridLayout
. Если вы не задаете родительский контейнер, MATLAB вызывает uifigure
функция, чтобы создать новый Figure
объект, который служит родительским контейнером.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
Каждый тип поддержки объектов кнопки различный набор свойств. Для полного списка свойств и описаний для каждого типа, смотрите связанную страницу свойств.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.