MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   停止MATLAB GUI回调 (https://www.labfans.com/bbs/showthread.php?t=26172)

poster 2019-12-14 20:13

停止MATLAB GUI回调
 
我有一个“开始”和“停止”按钮。当我点击START时,我在回调中运行了一堆代码。从根本上讲,这是一个顺序的“脚本”,用于打开阀,分配水然后关闭阀...没有while()循环,并且不会重复。我希望能够使用STOP按钮随时停止此过程。我看到的大多数相关答案都在使用while()循环的情况下。有人还建议定期检查是否按下了STOP按钮(使用变量或句柄变量)。

由于我没有while循环,所以我不能那样解决。另外,我希望能够立即退出,而不必定期检查(因为在我的代码中多次检查将是丑陋且令人困惑的)。有没有办法终止被STOP按钮中断的回调?如果不是,是否可以使“开始”按钮运行一个.m文件,然后使“停止”按钮终止该.m文件?

最坏的情况是定期检查变量。

更新:好吧,看起来最坏的情况就是MATLAB所建议的... [URL="http://www.mathworks.com/support/solutions/en/data/1-33IK85/index.html?product=ML&solution=1-33IK85"]http://www.mathworks.com/support/solutions/en/data/1-33IK85/index.html?product=ML&solution=1 -33IK85[/URL]

谢谢。



[B]回答:[/B]

不管是否循环,您都将被迫在代码中插入[I]“检查点”,[/I]以使程序继续执行或停止。查看[URL="http://www.mathworks.com/help/techdoc/ref/function.html"]函数[/URL] ,命令return将在所需的点恢复执行。

您可以选择的是使用[URL="http://www.mathworks.com/help/techdoc/ref/brk7uzk.html#brpeid9"]事件和侦听器[/URL]传播“停止触发”的“方法”,或The MathWorks提供的解决方案。



[url=https://stackoverflow.com/questions/4694141]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 23:18

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.