从“键盘”命令恢复?

5个视图(过去30天)
朱塞佩·安东尼奥
朱塞佩·安东尼奥 2019年11月19日
回答: 2019年11月22日
我使用“键盘”命令停止嵌套(回调)函数(由按钮触发)中的执行,以便用户能够修改其工作区。
作用myFunc()
...
作用myNestedFunc(h,~)
装载(“myMatFile.mat”,“myGraph”);
openvarmyGraph.边;
键盘
终止
终止
问题是,要退出调试模式,用户应该在命令窗口中运行“dbcont”,但我想在他完成编辑变量后立即恢复。
如果我尝试编写另一个回调函数,如下所示:
作用myFunc()
...
作用恢复(h,~)
dbcont;
终止
终止
我得到错误“仅当在调试模式下停止时才允许调试命令”。
有没有一种方法可以在不强制用户在命令窗口中手动输入“dbcont”的情况下从“键盘”恢复?
2评论
朱塞佩·安东尼奥
朱塞佩·安东尼奥 2019年11月22日
如果我使用eval函数,我会得到错误“仅当在调试模式下停止时才允许调试命令”。我不知道这是否取决于MATLAB版本,但我必须使用它。
关于如何克服这个问题有什么建议吗?

登录以发表评论。

答复(1)

简
2019年11月22日
使用调试命令与用户交互是一个非常糟糕的设计。动态修改工作区是非常脆弱的。
通过另一个回调恢复调试模式也很奇怪。实际上,您应该能够检查Matlab当前是否处于调试模式,但在另一个回调中在调试模式下停止时启动另一个回调,至少会让人困惑。甚至包括 dbcont 在一个 尝试/抓住 block不是一个聪明的解决方案,但由于经验的原因,值得尝试。
为用户交互创建一个干净的GUI。仅在调试时使用调试方法。

下载188bet金宝搏


释放

R2016a

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!