How can i stop the loop iteration using pushbutton callback in MATLAB GUI?

1 次查看(过去 30 天)
I have GUI which has pushbutton to stop the for loop iteration. the code structure for stop button callback is follows
g = 1
handles.g = g
guidata(hObject,handles)
When i press the button, it sets the value of g = 1;
In the iteration loop, i have passed the updated value of g using
g = handles.g
and issuing a condition to stop the loop iterations
if g == 1
return
end
however, the iteration loop does not stop, since the value of g resets to 0
why does this happen ?

采纳的回答

Image Analyst
Image Analyst 2018-11-28
I have a very small demo that does exactly that. It start counting, then when you press stop, it stops counting and updating the text label on the GUI. Then when you press Go, it starts counting and updating the label again.
  1 个评论
Roche de Guzman
Roche de Guzman 2021-1-20
I tried doing a similar process in MATLAB app but the changing of user data to true (1) only happens after the iteration (on queue). I have attached the mlapp file.

请先登录,再进行评论。

更多回答(1 个)

YT
YT 2018-11-28
If you want to stop your iteration (for/while loop), you could try break instead of return.
  1 个评论
VBBV
VBBV 2018-11-28
编辑:VBBV 2018-11-28
yes, i have tried that as well. still it does not stop. because it does not enter the if loop, since the value of g resets to 0. why does this happen ?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Interactive Control and Callbacks 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by