uislider

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

Синтаксис

sld = uislider
sld = uislider(parent)
sld = uislider(___,Name,Value)

Описание

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

пример

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

пример

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

Примеры

свернуть все

fig = uifigure;
sld = uislider(fig);

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

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

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

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

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

limits = sld.Limits
limits =

     0   100

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

sld.Limits = [-50 50];
sld.Value = 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, и затем переместите ползунок ползунка. Когда вы отпускаете кнопку мыши, круговая стрелка указателя перемещается в совпадающее значение на приборе.

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

Этот код создает окно, содержащее ползунок и прибор. Когда пользователь приложения перемещает ползунок ползунка, коллбэк 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, Panel, ButtonGroup или GridLayout. Если никакой контейнер не задан, MATLAB вызывает функцию uifigure, чтобы создать новый объект Figure, который служит родительским контейнером.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Вектор символов, содержащий допустимое выражение 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 соответствуют выделенной области родительского контейнера. Область векторной и растровой графики является областью в границах контейнера и не включает область, занятую художественными оформлениями, такими как панель меню или заголовок.

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

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

Функции

Свойства

Введенный в R2016a

Для просмотра документации необходимо авторизоваться на сайте