How to extract a slider value?

3 visualizzazioni (ultimi 30 giorni)
Darío Imbernón Clavero
Darío Imbernón Clavero il 20 Apr 2021
Modificato: VBBV il 18 Mag 2024
%Slider
fig = uifigure('Position',[100 100 350 275]);
pnl1 = uipanel(fig);
sld1 = uislider(pnl1,'Position',[100 40 120 3],... 'ValueChangingFcn',@(sld,event1) slider1(event1));
sld1.Limits = [-100 100];
sld2 = uislider(pnl1,'Position',[100 100 120 3],... 'ValueChangingFcn',@(sld,event2) slider2(event2));
sld2.Limits = [-100 100];
sld3 = uislider(pnl1,'Position',[100 180 120 3],... 'ValueChangingFcn',@(sld,event3) slider3(event3));
sld3.Limits = [-100 100];
I'm trying to make a program to extract the power of my engine from the sliders I declared(each one corresponds to one engine). So I need to extract the value of each slider when i dragg it as an integer variable, if anyone can help it will be great.
Thanks!

Risposte (2)

Adam Danz
Adam Danz il 20 Apr 2021
Modificato: Adam Danz il 20 Apr 2021
See the value property in the slider documentation.
  3 Commenti
Darío Imbernón Clavero
Darío Imbernón Clavero il 21 Apr 2021
I put this for to read the values of the slider as you said, but it sends me this error. I dont find any information about it.
Adam Danz
Adam Danz il 21 Apr 2021
Modificato: Adam Danz il 23 Apr 2021
The first line of the error message tells you what the problem is.
slider3 is not defined.
You probably mean app.slider3 assuming that's the handle to your slider.

Accedi per commentare.


VBBV
VBBV il 18 Mag 2024
Modificato: VBBV il 18 Mag 2024
@Darío Imbernón Clavero, You can call the ValueChangedFcn property for the uislider function, and define functions for ValueChangedFcn names given inside the uislider function. This will make the slider functions output the slider value accordingly and get rid of the for loop. The sld and event are common input arguments for the slider functions to record the events by user clicks on slider component.
clc
clear all
fig = uifigure('Position',[100 100 350 275])
pnl1 = uipanel(fig)
sld1 = uislider(pnl1,'Position',[100 40 120 3],'ValueChangedFcn',@(sld,event) slider1(event))
sld1.Limits = [-100 100]
sld2 = uislider(pnl1,'Position',[100 100 120 3],'ValueChangedFcn',@(sld,event) slider2(event))
sld2.Limits = [-100 100]
sld3 = uislider(pnl1,'Position',[100 180 120 3],'ValueChangedFcn',@(sld,event) slider3(event))
sld3.Limits = [-100 100]
% call the ValueChangedFcn
a = sld1.ValueChangedFcn;
b = sld2.ValueChangedFcn;
c = sld3.ValueChangedFcn;
% define the functions for ValueChangedFcn names given inside the uislider
function a = slider1(event)
a = event.Value
end
function b = slider2(event)
b = event.Value
end
function c = slider3(event)
c = event.Value
end

Categorie

Scopri di più su Language Fundamentals in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by