Создайте компонент поля списка
создает поле списка в новом окне рисунка и возвращает lb
= uilistboxListBox
объект. MATLAB® вызывает uifigure
функция, чтобы создать фигуру.
задает lb
= uilistbox(___,Name,Value
)ListBox
свойства с помощью одного или нескольких Name,Value
парные аргументы. Используйте эту опцию с любыми комбинациями входных аргументов в предыдущих синтаксисах.
Создайте поле списка в окне рисунка.
fig = uifigure('Position', [100 100 300 250]);
lbx = uilistbox(fig);
Создайте поле списка.
fig = uifigure; lbx = uilistbox(fig);
Определите, позволяет ли поле списка множественные выборы.
multi = lbx.Multiselect
multi = off
Включите мультивыбор.
lbx.Multiselect = 'on';
Создайте поле списка, которое выполняет действие, когда пользователь выбирает элемент в списке.
Сохраните следующий код как selectlistbox.m
на вашем пути MATLAB.
Этот код создает приложение, содержащее поле списка и текстовую область. ValueChangedFcn
коллбэк обновляет текстовую область, чтобы отобразить выбор поля списка.
function selectlistbox fig = uifigure('Position',[100 100 350 275]); % Create text area txt = uitextarea(fig,... 'Position',[125 90 100 22],... 'Value','First'); % Create list box lbox = uilistbox(fig,... 'Position',[125 120 100 78],... 'Items',{'First','Second','Third'},... 'ValueChangedFcn', @updateEditField); % ValueChangedFcn callback function updateEditField(src,event) txt.Value = src.Value; end end
Запустите selectlistbox
и выберите опцию из списка.
Создайте поле списка, которому сопоставили числовое значение с каждым элементом. Когда пользователь выбирает элемент в поле списка, поле редактирования отображает связанное числовое значение.
Сохраните следующий код как dataselection.m
на вашем пути MATLAB. Этот код создает приложение, содержащее поле списка и числовое поле редактирования. Каждый элемент в списке имеет температуру, сопоставленную с ним. Когда пользователь выбирает элемент в списке, ValueChangedFcn
коллбэк отображает соответствующую температуру в поле редактирования.
function dataselection fig = uifigure('Position',[100 100 350 275]); % Create Numeric Edit Field ef = uieditfield(fig,'numeric',... 'Position',[125 90 100 22]); % Create List Box lbox = uilistbox(fig,... 'Items', {'Freezing', 'Warm', 'Hot', 'Boiling'},... 'ItemsData', [0, 25, 40, 100],... 'Position',[125 120 100 78],... 'ValueChangedFcn', @selectionChanged); % ValueChangedFcn callback function selectionChanged(src,event) % Display list box data in edit field ef.Value = src.Value; end end
Запустите dataselection
и выберите элемент в списке. Числовое поле редактирования обновляется, чтобы отразить температуру, сопоставленную с выбором.
Создайте приложение, содержащее поле списка, которое позволяет нескольким элементам быть выбранными. Запишите ValueChangedFcn
коллбэк, чтобы отобразить выбранные пункты в текстовой области ниже поля списка.
Сохраните следующий код как multiselect.m
на вашем пути MATLAB.
function multiselect fig = uifigure('Position',[100 100 350 275]); % Create Text Area txt = uitextarea(fig,... 'Position',[125 80 100 50]); % Create List Box lbox = uilistbox(fig,... 'Position',[125 150 100 78],... 'Multiselect','on',... 'ValueChangedFcn',@selectionChanged); % ValueChangedFcn callback function selectionChanged(src,event) txt.Value = src.Value; end end
Запустите multiselect
и выберите элементы из списка. Текстовая область отображает ваш выбор.
parent
— Родительский контейнерFigure
объект (значение по умолчанию) | Panel
возразите | Tab
возразите | ButtonGroup
возразите | GridLayout
объектРодительский контейнер в виде Figure
объект создал использование uifigure
функция или один из ее дочерних контейнеров: Tab
Панель
Группа кнопок
, или GridLayout
. Если вы не задаете родительский контейнер, MATLAB вызывает uifigure
функция, чтобы создать новый Figure
объект, который служит родительским контейнером.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'Items',{'Model 1','Model 2', 'Model 3', 'Model 4'}
задает опции поля списка, которые пользователь приложения видит, сверху донизу.Свойства, перечисленные здесь, являются подмножеством доступных свойств. Для полного списка смотрите ListBox Properties.
'Value'
ЗначениеItems
| элемент ItemsData
| {}
Значение в виде элемента Items
массив, ItemsData
массив или массив пустой ячейки. По умолчанию, Value
первый элемент в Items
.
Чтобы не задать выбор, установите Value
к массиву пустой ячейки.
Определение Value
как элемент Items
выбирает элемент списка, который совпадает с тем элементом. Если ItemsData
не пусто, затем Value
должен быть установлен в элемент ItemsData
, и поле списка выберет связанный элемент в списке.
'Items'
— Элементы поля списка{'Item 1','Item 2', 'Item 3', 'Item 4'}
(значение по умолчанию) | массив ячеек из символьных векторов 1 на n | массив строк |...Элементы поля списка в виде массива ячеек из символьных векторов, массива строк или 1D категориального массива. Дублирующиеся элементы позволены. Отображения поля списка столько же опций сколько существуют элементы в Items
массив. Если вы задаете это свойство как категориальный массив, MATLAB использует значения в массиве, не полный набор категорий.
'ItemsData'
— Данные сопоставлены с каждым элементом Items
значение свойства[]
) (значение по умолчанию) | числовой массив 1 на n | массив ячеек 1 на nДанные сопоставлены с каждым элементом Items
значение свойства в виде числового массива 1 на n или массива ячеек 1 на n. Дублирующиеся элементы позволены.
Например, если вы устанавливаете Items
значение к именам сотрудника, вы можете установить ItemsData
значение к соответствующим идентификационным номерам сотрудника. ItemsData
значение не отображается к пользователю приложения.
Если количество элементов массива в ItemsData
значение и Items
значение не соответствует, одно из следующего происходит:
Когда ItemsData
значение пусто, затем все элементы Items
значение представлено пользователю приложения.
Когда ItemsData
значение имеет больше элементов, чем Items
значение, затем все элементы Items
значение представлено пользователю приложения. MATLAB игнорирует дополнительный ItemsData
элементы.
Когда ItemsData
значение не пусто, но имеет меньше элементов, чем Items
значение, единственные элементы Items
значение, представленное пользователю приложения, является теми, которые имеют соответствующий элемент в ItemsData
значение.
Пример: {'One','Two','Three'}
Пример: [10 20 30 40]
'Multiselect'
— Несколько выбор элемента'off'
(значение по умолчанию) | логическое значение включения - выключенияНесколько выбор элемента в виде 'off'
или 'on'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
Установите это свойство на 'on'
позволить пользователям выбирать несколько элементов одновременно.
'ValueChangedFcn'
— Значение измененная функция''
(значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовЗначение измененная функция в виде одного из этих значений:
Указатель на функцию.
Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
Эта функция обратного вызова выполняется, когда пользователь выбирает различный элемент в поле списка. Это не выполняется если Value
установка свойства изменяется программно.
Эта функция обратного вызова может получить доступ к определенной информации о взаимодействии пользователя с полем списка. MATLAB передает эту информацию в ValueChangedData
возразите в качестве второго аргумента против своей функции обратного вызова. В App Designer аргумент называется событием
Вы можете запросить свойства объекта с помощью записи через точку. Например, event.PreviousValue
возвращает предыдущее значение поля списка. ValueChangedData
объект не доступен для функций обратного вызова, заданных как векторы символов.
В следующей таблице перечислены свойства ValueChangedData
объект.
Свойство | Значение |
---|---|
Value | Значение поля списка после нового взаимодействия пользователя приложения с ним |
PreviousValue | Значение поля списка перед новым взаимодействием пользователя приложения с ним |
Source | Компонент, который выполняет обратный вызов |
EventName | 'ValueChanged' |
Для получения дополнительной информации о записи коллбэков, смотрите Коллбэки Записи в App Designer.
'Position'
— Местоположение и размер поля списка
(значение по умолчанию) | [left bottom width height]
Местоположение и размер поля списка относительно родительского контейнера в виде векторного [left bottom width height]
В этой таблице описываются каждый элемент в векторе.
Элемент | Описание |
---|---|
left | Расстояние от внутреннего левого края родительского контейнера к внешнему левому краю поля списка |
bottom | Расстояние от внутреннего базового края родительского контейнера к внешнему базовому краю поля списка |
width | Расстояние между правыми и левыми внешними краями поля списка |
height | Расстояние между верхними и нижними внешними краями поля списка |
Все измерения указаны в пикселях.
Position
значения относительно drawable area родительского контейнера. Область векторной и растровой графики является областью в границах контейнера и не включает область, занятую художественными оформлениями, такими как панель меню или заголовок.
Пример: [100 100 100 200]
Используйте scroll
функционируйте, чтобы программно прокрутить элемент поля списка или верхнюю часть или нижнюю часть списка в представление.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.