Borrar filtros
Borrar filtros

Updating Values in a GUI from Editable Text Boxes

2 visualizaciones (últimos 30 días)
Jacob Mevorach
Jacob Mevorach el 22 de Mzo. de 2017
Respondida: Nanda Gupta el 28 de Mzo. de 2017
I wrote a GUI that performs tracking operations on a video and has a pause/start button but my problem is I'd like to make it be able to change the tracking parameters when it is paused. The tracking itself happens in a while loop but I've been able to interrupt the while loop when I press the pause button.
I've tried to update variables in the past using get() as in:
if true
maxCount=str2double(get(handles.edit6,'String')); %(no need to call guidata here)
end
ot alternatively through use of the handles structure but nothing seems to work and the tracking script seems to just use the first set of variables fed into the edit boxes.
This is currently the code for my Pause/Play button. Is there some way I could modify it to update the tracking parameters contained in the editable text boxes on my GUI. Any help in resolving this matter would be greatly appreciated.:
% % ************************ PAUSE / PLAY ***********************************
% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
if(strcmp(get(handles.pushbutton3,'String'),'Pause'))
set(handles.pushbutton3,'String','Play');
set(handles.pushbutton4,'Enable','on');
set(handles.pushbutton5,'Enable','on');
uiwait();
else
set(handles.pushbutton3,'String','Pause');
set(handles.pushbutton4,'Enable','on');
set(handles.pushbutton5,'Enable','off');
uiresume();
end

Respuesta aceptada

Nanda Gupta
Nanda Gupta el 28 de Mzo. de 2017
What I understand from the above description is that when you push a play/pause button, the values contained in the editable text boxes are not updating.
I can see that the GUI data is not getting updated once the handles are set. You can do so by using the "guidata" function. So right after setting the handles, just pass the handles and hObject to this function:
set(handles.pushbutton5,'Enable','on');
guidata(hObject, handles);
For more information regarding "guidata", please refer: https://www.mathworks.com/help/matlab/ref/guidata.html

Más respuestas (0)

Categorías

Más información sobre Interactive Control and Callbacks en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by