Azzera filtri
Azzera filtri

How to Change the Min property of slider?

1 visualizzazione (ultimi 30 giorni)
Rightia Rollmann
Rightia Rollmann il 21 Feb 2017
Commentato: Adam il 21 Feb 2017
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 Commento
Jan
Jan il 21 Feb 2017
Please use the "{} Code" button to format code in the forum. I've done this for you this time.

Accedi per commentare.

Risposta accettata

Jan
Jan il 21 Feb 2017
Modificato: Jan il 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 Commenti
Jan
Jan il 21 Feb 2017
The OpeningFcn is fine.
Adam
Adam il 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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Graphics Performance 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