如何在MATLAB的应用程序设计器中使用waitfor
或uiwait
?这些功能仅适用于数字(GUIDE)而非应用程序设计器窗口。如何在应用程序设计器中具有相同的行为?在继续主窗口代码之前,我等待关闭第二个窗口。
答案 0 :(得分:5)
waitfor(second_window, 'close');
实际上并没有等待数字窗口关闭。指定waitfor
的第二个输入告诉MATLAB阻止执行,直到指定的属性更改或删除对象为止。
如果有足够的字符匹配唯一名称 * ,MATLAB会自动填充属性名称。在您的情况下,'close'
与图的CloseRequestFcn
匹配。 UI图对象do not have this property,因此错误。
在没有第二个输入的情况下调用waitfor
以实现所需的行为。
*我不确定这是否在MATLAB的文档中明确说明,但功能等同于PartialMatching
property of MATLAB's inputParser
class:
将接受作为参数名称的前导子串的输入,并且该值与该参数匹配。如果输入字符串有多个可能的匹配项,则MATLAB会抛出错误。