How to extract a slider value?

11 views (last 30 days)
Darío Imbernón Clavero
Darío Imbernón Clavero on 20 Apr 2021
Edited: VBBV on 18 May 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!

Answers (2)

Adam Danz
Adam Danz on 20 Apr 2021
Edited: Adam Danz on 20 Apr 2021
See the value property in the slider documentation.
  3 Comments
Darío Imbernón Clavero
Darío Imbernón Clavero on 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 on 21 Apr 2021
Edited: Adam Danz on 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.

Sign in to comment.


VBBV
VBBV on 18 May 2024
Edited: VBBV on 18 May 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

Categories

Find more on Programming in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!