uislider

Создайте компонент ползунка

Описание

sld = uislider создает ползунок в новом окне рисунка и возвращает Slider объект. MATLAB® вызывает uifigure функция, чтобы создать фигуру.

пример

sld = uislider(parent) создает ползунок в заданном родительском контейнере. Родительским элементом может быть Figure созданное использование uifigure функция или один из ее дочерних контейнеров.

пример

sld = uislider(___,Name,Value) задает Slider свойства с помощью одного или нескольких Name,Value парные аргументы. Используйте эту опцию с любыми комбинациями входных аргументов в предыдущих синтаксисах.

Примеры

свернуть все

fig = uifigure;
sld = uislider(fig);

Default slider in a figure. The slider range is from 0 to 100, with labeled ticks every 20 units and minor ticks every 4 units.

Создайте окно рисунка, содержащее панель. Создайте ползунок и задайте его положение в панели.

fig = uifigure;
pnl = uipanel(fig);
sld = uislider(pnl,'Position',[50 50 150 3]);

Default slider in a panel container.

Создайте ползунок. Установите Value свойство к 50.

fig = uifigure;
sld = uislider(fig,'Value',50);

Определите текущие пределы ползунка.

limits = sld.Limits
limits =

     0   100

Измените пределы ползунка и установите значение к 35.

sld.Limits = [-50 50];
sld.Value = 35;

Slider in a figure. The slider range is from -50 to 50, and the slider thumb is at 35.

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

Сохраните следующий код в sliderValue.m на вашем пути MATLAB.

Этот код создает окно, содержащее ползунок и прибор. Когда пользователь приложения перемещает ползунок ползунка, ValueChangedFcn коллбэк обновляет прибор, чтобы отразить значение ползунка.

function sliderValue
% Create figure window and components

fig = uifigure('Position',[100 100 350 275]);

cg = uigauge(fig,'Position',[100 100 120 120]);

sld = uislider(fig,...
    'Position',[100 75 120 3],...
    'ValueChangedFcn',@(sld,event) updateGauge(sld,cg));

end

% Create ValueChangedFcn callback
function updateGauge(sld,cg)
cg.Value = sld.Value;
end

Запустите sliderValue, и затем переместите ползунок ползунка. Когда вы отпускаете кнопку мыши, круговая стрелка указателя перемещается в совпадающее значение на приборе.

App with a gauge and a slider. The two components have the same range and value.

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

Этот код создает окно, содержащее ползунок и прибор. Когда пользователь приложения перемещает ползунок ползунка, ValueChangingFcn коллбэк обновляет прибор, чтобы отразить значение ползунка.

Сохраните следующий код в sliderChanging.m на вашем пути MATLAB.

function sliderChanging
% Create figure window and components

fig = uifigure('Position',[100 100 350 275]);

cg = uigauge(fig,'Position',[100 100 120 120]);

sld = uislider(fig,...
               'Position',[100 75 120 3],...
               'ValueChangingFcn',@(sld,event) sliderMoving(event,cg));

end

% Create ValueChangingFcn callback
function sliderMoving(event,cg)
cg.Value = event.Value;
end

Запустите sliderChanging, и затем переместите ползунок. Когда вы перемещаете ползунок, круговые перемещения стрелки указателя, отражая значение ползунка.

Входные параметры

свернуть все

Родительский контейнер в виде Figure объект создал использование uifigure функция или один из ее дочерних контейнеров: TabПанельГруппа кнопок, или GridLayout. Если вы не задаете родительский контейнер, MATLAB вызывает uifigure функция, чтобы создать новый Figure объект, который служит родительским контейнером.

Аргументы name-value

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

Пример: 'Limits',[0 50] задает минимальное значение ползунка как 0 и максимальное значение ползунка как 50.

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

Значение ползунка в виде числового значения. Числовое значение должно быть в диапазоне, указанном Limits значение свойства.

Типы данных: double

Минимальные и максимальные значения ползунка в виде двухэлементного числового массива. Первое значение должно быть меньше второго значения.

Если вы изменяете Limits таким образом, что Value свойство меньше нового нижнего предела, MATLAB устанавливает Value свойство к новому нижнему пределу. Например, предположите Limits свойством является [0 100] и Value 20. Если Limits изменения в [50 100], затем MATLAB устанавливает Value свойство к 50.

Точно так же, если вы изменяете Limits таким образом, что Value свойство больше нового верхнего предела, MATLAB устанавливает Value свойство к новому верхнему пределу.

Типы данных: double

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

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

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

Установка MajorTicks наборы свойств MajorTicksMode свойство к 'manual'.

Главные метки в виде галочки в виде массива ячеек из символьных векторов, массива строк или 1D категориального массива. Если вы не хотите показывать метки в виде галочки, задайте это свойство как массив пустой ячейки. Если вы хотите удалить метку из определенной отметки деления, задайте пустой символьный вектор или скаляр пустой строки для соответствующего элемента в MajorTickLabels массив. Если вы задаете это свойство как категориальный массив, MATLAB использует значения в массиве, не полный набор категорий.

Если длина MajorTickLabels массив отличается от длины MajorTicks вектор, MATLAB игнорирует дополнительные записи более длительного массива. Если существуют дополнительные метки, они проигнорированы. Если существуют дополнительные отметки деления, они отображаются без меток.

Установка MajorTickLabels изменяет MajorTickLabelsMode значение к 'manual'.

Примечание

Установка MajorTickLabels когда MajorTicksMode 'auto' может привести к неожиданным результатам. Чтобы избежать этого поведения, установите MajorTicksMode к 'manual' и вручную задайте значение MajorTicks перед установкой MajorTickLabels.

Значение изменило коллбэк в виде одного из этих значений:

  • Указатель на функцию.

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

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

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

Эта функция обратного вызова может получить доступ к определенной информации о взаимодействии пользователя с ползунком. MATLAB передает эту информацию в ValueChangedData возразите в качестве второго аргумента против своей функции обратного вызова. В App Designer аргумент называется событиемВы можете запросить свойства объекта с помощью записи через точку. Например, event.PreviousValue возвращает предыдущее значение ползунка. ValueChangedData объект не доступен для функций обратного вызова, заданных как векторы символов.

В следующей таблице перечислены свойства ValueChangedData объект.

СвойствоЗначение
ValueЗначение ползунка после нового взаимодействия пользователя приложения с ним
PreviousValueЗначение ползунка перед новым взаимодействием пользователя приложения с ним
SourceКомпонент, который выполняет обратный вызов
EventName'ValueChanged'

Для получения дополнительной информации о записи коллбэков, смотрите Коллбэки Записи в App Designer.

Коллбэк изменения значения в виде одного из этих значений:

  • Указатель на функцию.

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

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

Этот коллбэк выполняется, когда пользователь перемещает ползунок вдоль ползунка в приложении. Это не выполняется если Value свойство изменяется программно.

Этот коллбэк может получить доступ к определенной информации о взаимодействии пользователя с ползунком. MATLAB передает эту информацию в ValueChangingData возразите в качестве второго аргумента против своей функции обратного вызова. В App Designer аргумент называется событиемВы можете запросить свойства объекта с помощью записи через точку. Например, event.Value возвращает текущее значение ползунка. ValueChangingData объект не доступен для функций обратного вызова, заданных как векторы символов.

В следующей таблице перечислены свойства ValueChangingData объект.

СвойствоЗначение
ValueТекущее значение ползунка как пользователь приложения взаимодействует с ним
SourceКомпонент, который выполняет обратный вызов
EventName'ValueChanging'

Value свойство Slider объект не обновляется, пока пользователь не выпускает ползунок ползунка. Поэтому, чтобы получить значение, когда ползунок перемещается, ваш код должен получить Value свойство ValueChangingData объект.

ValueChangingFcn коллбэк выполняется можно следующим образом:

  • Если пользователь приложения кликает по значению ползунка однажды. затем коллбэк выполняет одно время. Например, если ползунок находится на 1,0, и нажатия кнопки пользователя приложения в 1,1, то коллбэк выполняется однажды.

  • Если пользователь приложения перетаскивает ползунок к новой позиции, коллбэк неоднократно выполняется. Например, если значение ползунка является 1.0, и нажатия кнопки пользователя приложения, содержит и перетаскивает удар, чтобы оценить 10.0, то коллбэк выполняется многократно, пока пользователь приложения не выпускает ползунок.

Для получения дополнительной информации о записи коллбэков, смотрите Коллбэки Записи в App Designer.

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

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

Все измерения указаны в пикселях.

Вы не можете изменить высоту ползунка когда Orientation значением свойства является 'horizontal'. Точно так же вы не можете изменить ширину ползунка когда Orientation значением свойства является 'vertical'.

Position значения относительно drawable area родительского контейнера. Область векторной и растровой графики является областью в границах контейнера и не включает область, занятую художественными оформлениями, такими как панель меню или заголовок.

Пример: [100 200 60 60]

Смотрите также

Функции

Свойства

Введенный в R2016a