【发布时间】:2014-07-22 23:00:36
【问题描述】:
我无法从动画情节中跳出 while 循环。本质上,我有一个带有两个按钮的 MATLAB GUI。一键启动动画情节。另一个按钮停止动画情节。但是,按下停止按钮并不会跳出 while 循环;它继续绘制。有什么我想念的,或者这根本不是要走的路吗?
% Infinite Loop
i = 1;
flag = true;
% My attempt at breaking out of the while loop. ----------------------
if get(handles.btnStopSim, 'Value') == 1
flag = false;
end
%---------------------------------------------------------------------
while flag
% Update Point
set(hLine, 'XData', xInit(1, i), 'YData', yInit(1, i))
set(hLine2, 'XData', xInit(2, i), 'YData', yInit(2, i))
set(hLine3, 'XData', xInit(3, i), 'YData', yInit(3, i))
set(hLine4, 'XData', xInit(4, i), 'YData', yInit(4, i))
set(hLine5, 'XData', xInit(5, i), 'YData', yInit(5, i))
set(hLine6, 'XData', xInit(6, i), 'YData', yInit(6, i))
set(hLineTarget, 'XData', Target(1), 'YData', Target(2))
drawnow
pause(delay)
i = rem(i + 1, numPoints) + 1;
if ~ishandle(hLine), break;
end
if ~ishandle(hLine2), break;
end
if ~ishandle(hLine3), break;
end
if ~ishandle(hLine4), break;
end
if ~ishandle(hLine5), break;
end
if ~ishandle(hLine6), break;
end
end
while 循环中的内容只是轨迹数据。标准的东西...
如果需要更多信息,请告诉我。
谢谢!
【问题讨论】:
标签: matlab while-loop matlab-guide