I have a function running when I push a button in a GUI. I want to end this function when I press another button. example:
function first_callback (hObject, eventdata, handles)
a = b + c
while...
...
...
...
end
end
function stopbuttonback_callback (hObject, eventdata, handles)
%something that stops function first_callback
end

 채택된 답변

Walter Roberson
Walter Roberson 2017년 9월 12일

0 개 추천

function first_callback (hObject, eventdata, handles)
a = b + c
set(handles.stopbutton, 'UserData', false);
while true
drawnow();
if get(stopbutton, 'UserData'); break; end
...
...
...
end
end
function stopbuttonback_callback (hObject, eventdata, handles)
set(hObject, 'UserData', true);
end

댓글 수: 3

Renato Pereira
Renato Pereira 2017년 9월 13일
Thank you so much!!!!
Dont know why but when I write the "while true" the function stopbuttonback_callback doesn't work... let me give you the all code:
function start_Callback(hObject, eventdata, handles)
a = 0;
while a < 100
b = datestr(a/(24*60*60),'HH:MM:SS');
set(handles.time,'String',b);
a = a + 1;
pause(1)
end
function stop_Callback(hObject, eventdata, handles)
set(handles.time,'String','00:00:00');
function start_Callback(hObject, eventdata, handles)
a = 0;
set(handles.stop, 'UserData', false);
while a < 100
pause(1); %pause works as well as drawnow() to allow interrupts
if get(handles.stop, 'UserData'); break; end
b = datestr(a/(24*60*60),'HH:MM:SS');
set(handles.time,'String',b);
a = a + 1;
end
function stop_Callback(hObject, eventdata, handles)
set(handles.time,'String','00:00:00');
set(hObject, 'UserData', true);

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

태그

Community Treasure Hunt

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

Start Hunting!

Translated by