2

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

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

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

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

谢谢。

4

1 回答 1

2

无论是否是循环,您都将被迫在代码中插入“检查点”,程序执行将继续或停止。查看functions,该命令return将在所需的点恢复执行。

您只能选择使用事件和侦听器的“停止触发”传播的“方法”或 The MathWorks 提供的解决方案。

于 2011-01-14T18:49:40.067 回答