How can I use slider value in push button area, to generate a function.

3 vues (au cours des 30 derniers jours)
Tonusree Mohanto
Tonusree Mohanto le 7 Mar 2019
Commenté : Adam le 11 Mar 2019
function t_1_Callback(hObject, eventdata, handles)
a=get(handles.t_1,'value');
set(handles.slider_editText,'string',num2str(a));
guidata(hObject,handles);
a=str2num(a);
.
.
.
.
function on_switch_Callback(hObject, eventdata, handles)
H01=[cosd(a), 0, sind(a), 30*cosd(a); sind(a), 0, -cosd(a), 30*sind(a); 0, 1, 1,30; 0,0,0,1];
  3 commentaires
Tonusree Mohanto
Tonusree Mohanto le 9 Mar 2019
Here, t_1 is the tag name of the slider button,I set a maximum and minimum range for that slider. when the slider will slide in between the range, I want to restore the value in the parameter 'a' and that value to use in the function of the push button. The 'on_switch' is the push button. But I can not use the value. Actually may be the value is not updating by my syntax.
Adam
Adam le 11 Mar 2019
Either do as Geoff Hayes shows or you need to save
handles.a = ...
guidata( hObject, handles )
in your slider callback and then
a = handles.a
in your pushbutton callback, but on the whole there really isn't much point constantly updating a variable on handles when you can just get it direct from the slider when you need it.

Connectez-vous pour commenter.

Réponses (1)

Geoff Hayes
Geoff Hayes le 7 Mar 2019
Tonusree - if you want to use the a value in your pushbutton callback (is this on_switch_Callback?) then just do
function on_switch_Callback(hObject, eventdata, handles)
a=get(handles.t_1,'value');
H01=[cosd(a), 0, sind(a), 30*cosd(a); sind(a), 0, -cosd(a), 30*sind(a); 0, 1, 1,30; 0,0,0,1];
% etc.
end

Community Treasure Hunt

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

Start Hunting!

Translated by