How to Change the Min property of slider?

3 views (last 30 days)
The code below works perfectly until I change Min from 0 to 1. Why cannot I set it 1? What is the solution?
function test3()
hfig = figure();
slider = uicontrol('Parent', hfig,...
'Style', 'Slider',...
'Tag', 'slider1',...
'Callback', @slider_callback,...
'Min', 0,...
'Max', 40,...
'SliderStep', [1/40 10/40]);
function slider_callback(hObject, eventdata)
a = get(hObject, 'Value');
disp( a );
  1 Comment
Jan
Jan on 21 Feb 2017
Please use the "{} Code" button to format code in the forum. I've done this for you this time.

Sign in to comment.

Accepted Answer

Jan
Jan on 21 Feb 2017
Edited: Jan on 21 Feb 2017
When you set the 'Min' value to 1, the current 'Value' is still at 0. Therefore you should see the warning:
Warning: slider control can not have a Value outside of Min/Max range
Control will not be rendered until all of its parameter values are valid
Considering this:
function test4()
hfig = figure();
slider = uicontrol('Parent', hfig,...
'Style', 'Slider',...
'Tag', 'slider1',...
'Callback', @slider_callback,...
'Min', 1, 'Max', 40,...
'Value', 1, ... % <- Inside [Min, Max]
'SliderStep', [1/40 10/40]); % Perhaps [1/39, 10/39]
function slider_callback(hObject, eventdata)
a = get(hObject, 'Value');
disp(a);
  3 Comments
Adam
Adam on 21 Feb 2017
I usually factor it out into another function that I call from the _OpeningFcn, just to keep it a bit tidier, but it all amounts to the same thing.

Sign in to comment.

More Answers (0)

Categories

Find more on Startup and Shutdown 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!