GUI slider problem in edit_text

1 view (last 30 days)
Venkat Ta
Venkat Ta on 12 Jan 2019
Commented: TADA on 15 Jan 2019
Hi,
I have the issue in the slider with edit_text in GUI
When I fix the value in edit text, the slider moves but it doesnot update the slider variable until I touch the slider cursor. I nedd to use only one variable at fixing the value in edit_text as well as moving cursor automatically
Can you help in the below code
Best regards,
Venkat

Accepted Answer

Venkat Ta
Venkat Ta on 14 Jan 2019
Hi,
Thanks for the code but I have error below in the code
Error: File: SliderSIX.m Line: 175 Column: 1
The function "slider1_Callback" was closed with an 'end', but at least one other function definition was not. To avoid confusion when using nested functions, it is illegal to use both conventions in the same file.
  6 Comments
Venkat Ta
Venkat Ta on 14 Jan 2019
Hi,
The base workspace works fine and Thanks for that. The second I dont get it, sorry.
I tried the min, max and fixed value set in slider createfuncton and opening function but it doesnot work well in this format. can you tell me where exactly I can set the min, max and fixed slider value?
TADA
TADA on 15 Jan 2019
I Don't Understand What You Are Trying To Achieve And What Isn't Working Well.
Please Be More Specific

Sign in to comment.

More Answers (1)

TADA
TADA on 13 Jan 2019
you can add a utility function that takes in the new value and sets it in the appropriate variable, and gets a list of controls to update...
something like that:
function onValueChanged(value, varName, updateGuiHandles)
assignin('base', varName ,value);
% lets assume updateGuiHandles is a cell array here
for i = 1:length(updateGuiHandles)
uih = updateGuiHandles{i};
switch get(uih, 'Style')
case {'edit'} % maybe others too
if ~ischar(value)
v = num2str(value);
else
v = value;
end
set(uih, 'String', v);
case {'slider'} % maybe others too
if ischar(value)
v = str2double(value);
else
v = value;
end
set(uih, 'Value', v);
end
end
end
function onSliderValueUpdated(value, updateGuiHandles)
onValueChanged(value, 'slider_1_Val', updateGuiHandles);
end
now call that from your callback function:
function edit1_Callback(hObject, eventdata, handles)
edit1_value=get(hObject,'String');
onSliderValueUpdated(edit1_value, {handles.slider1});
end
function slider1_Callback(hObject, eventdata, handles)
slider1Value = get(handles.slider1,'Value');
onSliderValueUpdated(slider1Value, {handles.edit1});
end

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!