matlab中的非持久用户输入对话框

时间:2014-03-20 06:12:27

标签: matlab plot

好的,所以我的代码输出了几个图,然后基于这些图,用户应该进行一些电路更改,然后根据这些更改,matlab代码将继续

这就是我所做的:

  1. 打印出那些情节
  2. 发出一个消息对话框,询问用户是否已准备好继续执行代码
  3. 如果在对话框中输入== yes,则继续执行代码
  4. 问题在于:

    一旦matlab打开对话框,我就无法查看我的情节,因为消息框是持久的并且保持在所有情节的顶部,直到我关闭它或输入输入。

    这是一个问题,因为我需要能够查看这些图并且不想关闭框。

    有没有办法让这个盒子不持久?或者我的另一个选择是什么?

    PS

    在打印图表并放置对话框后,我尝试暂停pause(30) 30秒。问题是我需要不同的时间来修复我的电路。有时10秒 - 有时5分钟。所以暂停解决方案并不是非常有效

1 个答案:

答案 0 :(得分:1)

如果您依赖questdlg(或类似),则没有任何机制可以让您按照自己的意愿行事。如果查看edit questdlg,您会看到该图被硬编码为'Modal',并且调用了uiwait,这会停止输入,直到其中一个按钮回调运行uiresume。无法控制此行为( )。

我看到两种出路:

  1. 复制questdlg.mquestdlg_nonmodal.m并进行必要的更改
  2. 在一个或所有绘图上创建按钮,使用与对话框按钮相同的回调。
  3. 就个人而言,我选择了第2选项,但我不了解你的情况或偏好。