how to make a passive slider in GUIDE?

Hello, I would like to know how I can make a slider 'passive'. Passive means the slider will move to show progress but the user cannot adjust or move the slider. This will make the slider move like in movie player but not clickable or drag-able. Can I do that? Thanks!

 Risposta accettata

Mari
Mari il 26 Mag 2013
Hi!
First of all, you have to open the slider's options and set 'Enable' to 'inactive', so the user cannot change the slider's position. Then, to set the position of the slider, you use its handle:
newvalue = 0.5;
set(handles.slider1,'Value',newvalue);

7 Commenti

that works! thanks.
How this works?
I tried changing the slider properties of Enable to inactive and run the GUI, the slider is not select-able. But now i tried to code the slider callback and the slider is not visible. Did I do something wrong?
Jan
Jan il 26 Mag 2013
As the most likely appearing warning messages in the command window tell, the slider is not drawn, if the values are outside the defined span. So check the 'Min' and 'Max' properties.
I have set the 'min' to 0, 'max' to 100.
How can I code the value of the slider to update with the increase of a variable value?
My code:
function pushbutton1_Callback(hObject, eventdata, handles)
hTEST = getappdata (0, 'hTEST');
updateSlider;
function updateSlider
hTEST = getappdata (0 , 'hTEST' );
sliderValue = getappdata (hTEST, 'currentNum');
set (handles.slider1, 'Value' , sliderValue)
function slider1_Callback(hObject, eventdata, handles)
hTEST = getappdata (0, 'hTEST');
currentNum = getappdata (hTEST, 'currentNum' );
set (hObject, 'Value' , currentNum)
This return error:
??? Undefined variable "handles" or class "handles.slider1".
Error in ==> TEST>updateSlider at
set (handles.slider1, 'Value' , sliderValue)
Error in ==> TEST>pushbutton1_Callback at
updateSlider;
Thanks!
In order to use the handles in another function, you have to pass it as an argument to the updateslider function:
function pushbutton1_Callback(hObject, eventdata, handles)
hTEST = getappdata (0, 'hTEST');
updateSlider(handles);
function updateSlider(handles)
hTEST = getappdata (0 , 'hTEST' );
sliderValue = getappdata (hTEST, 'currentNum');
set (handles.slider1, 'Value' , sliderValue)
...
...
...
Firzi Mukhri
Firzi Mukhri il 28 Mag 2013
Modificato: Firzi Mukhri il 28 Mag 2013
Thank you so much Mari! it really works...

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su App Building in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by