How to enable "Snap to Tick" for a slider in App Designer?
Show older comments
Hi, I want to know how to make a slider move discretely rather than continuously. As an example, I want the slider to jump from 1 to 2 when I move it. In other words, I need to enable the "Snap to Tick" feature.
Thanks in advance.
3 Comments
Kevin Chng
on 22 Feb 2019

What is yours 'snap to tick'? Do you have photo to illustrate it?
Farzam Malmir
on 22 Feb 2019
Jesse Beaupre
on 15 Jun 2023
In the callback make the slider value rounded and then set the slider position to this rounded value.
Answers (1)
Kevin Chng
on 22 Feb 2019
0 votes

Is it what you expect? If you are using app designer, on your left hand side bottom, there is configuration you may edit. Empty the minor tick, and modify the major tick to 1,2,3,4,5.
Don't forgot to change the limit as well to 0,5
4 Comments
Farzam Malmir
on 24 Feb 2019
Kevin Chng
on 25 Feb 2019
Edited: Kevin Chng
on 25 Feb 2019
The only way i can think about it is to create a callback function, then use the round off method to readjust the value of slider if user move the handle to the place between intervals.
Create a callback function for your slider
value = app.Slider.Value;
app.Slider.Value=round( value / 20 ) * 20;
You may change the value of 20 to 2, if the interval is 2.
Jeff Severino
on 2 Jul 2019
clever!
Fryderyk Kukowski
on 11 Aug 2024
@Kevin Chng It does not work.
My slider settings:

I have set up slider functions like this:
function SliderValueChanging(app, event)
app.Slider.Value = round(event.Value);
end
function SliderValueChanged(app, event)
app.Slider.Value = round(app.Slider.Value);
end
But the slider behaves like this:

So the SliderValueChanging has no effect.
Is there a way to fix this?
Categories
Find more on Develop Apps Using App Designer in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
