How to stop (an infinite loop) / the execution of my matlab code via app designer?

조회 수: 86 (최근 30일)
Hey, i got an infinite while loop in my script and i want to get out of it using matlab app.designer, therefore i created a start button to run my script which is working perfectly fine and a stop button to stop it whenever the user wants to from the designer.
I couldnt figure how to programme the stop button. a solution can be the change of the value of the while loop(while true ==> while false) from the designer when clicking on the stop button. how can i do it?
i appreciate every help and thanks in advance!
  댓글 수: 3
Matlab_Beginner
Matlab_Beginner 2022년 8월 30일
Hey, i did not actually. i saw the link its almost the same question as mine. i will try it and tell u
Thanks
Matlab_Beginner
Matlab_Beginner 2022년 8월 30일
Hey again, i didnt figure out what to put in the ButtonCallback fnct. i quit new to app designer, can u provide me with more info on how to do it.
thanks a lot.

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

채택된 답변

Ankit
Ankit 2022년 8월 30일
@Matlab_Beginner Please find solution to your problem, I have attached *.mlapp file too

추가 답변 (1개)

Rik
Rik 2022년 8월 30일
You need to use the callback function from your stop button to edit a value. This is the general structure:
function StartButtonCallback(app)
app.StopButtonClicked=false;
while ~app.StopButtonClicked
% Do things
% Process any callbacks in the queue. This will also update the value
% of app.StopButtonClicked if the stop button callback has run.
drawnow
end
end
function StopButtonCallback(app)
app.StopButtonClicked=true;
end
  댓글 수: 3
Image Analyst
Image Analyst 2022년 8월 30일
Evidently you also have a function called "StopButtonPushed" which is not shown in your screenshot. Don't have the flag name be the same as your callback function name. Call the flag StopButtonClicked like he said, not StopButtonPushed (which is your function's callback name).

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

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by