在Matlab GUI中暂停/用户输入(warndlg)问题

时间:2017-06-03 14:49:09

标签: matlab

在保存文件之前,我希望有一个警告对话框。在下面的脚本中没有停止按下warndlg OK并且脚本自动继续移动到uiputfile。如何在它们之间暂停/强制用户在uiputfile之前按OK?

脚本:

warndlg('May take time due to image size')
[file,path] = uiputfile('*.tif', 'Save As');
if file == 0
  return;
end

2 个答案:

答案 0 :(得分:1)

您可以使用uiwait功能:

uiwait(warndlg('May take time due to image size'))

它将阻止脚本的执行,直到按下OK按钮。

希望这有帮助,

Qapla'

答案 1 :(得分:1)

您需要将warndlgcreatemode选项设置为'modal'

warndlg('May take time due to image size', 'Warning!', 'modal');

或将warndlg句柄传递给uiwait函数以暂停程序的继续,直到警告对话框关闭:

hWarn = warndlg('May take time due to image size');
uiwait(hWarn);