Break A While loop using a status Button

조회 수: 4 (최근 30일)
Mohamed Afify
Mohamed Afify 2021년 7월 15일
댓글: Mohamed Afify 2021년 7월 19일
Hello, I am trying to break the while loop containing that for loop by using the 1 and 0 status of the status button. I am having an issue doing it. That's my code below. Any other ideas to break a while 1 loop would be appreciated. Thank you!
% Value changed function: CANSTARTButton
function CANSTARTButtonValueChanged(app, event)
value = app.CANSTARTButton.Value;
app.CANSTARTButton.Value = 0;
app.CANSTARTButton.Enable = true;
while 1
%add code here
app.CANMSGStatusLamp.Color = 'Blue';
for v = 1.0:-0.2:0.0
disp(v)
end
%%end
if (app.CANSTARTButton.Value == 1)
app.CANMSGStatusLamp.Color = 'red';
break;
end
end
app.CANSTARTButton.Value = 0;
app.CANSTARTButton.Enable = false;
%if (value==1)
% app.CANMSGStatusLamp.Color = 'red';
% while 1
%else
% app.CANMSGStatusLamp.Color = 'Green';
%end
end
end

답변 (1개)

Jan
Jan 2021년 7월 15일
편집: Jan 2021년 7월 15일
Insert a drawnow command inside the loop to let Matlab update the GUI.
A small simplification:
app.CANMSGStatusLamp.Color = 'Blue';
while app.CANSTARTButton.Value == 0
%add code here
for v = 1.0:-0.2:0.0
disp(v)
end
drawnow;
end
app.CANMSGStatusLamp.Color = 'red';
  댓글 수: 1
Mohamed Afify
Mohamed Afify 2021년 7월 19일
Never knew about the drawnow, worked fine thank you so much!

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

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by