Блокируйте выполнение программы и ожидайте, чтобы возобновиться
uiwait
uiwait(h)
uiwait(h,timeout)
uiwait выполнение блоков до uiresume называется, или текущая фигура удалена. Этот синтаксис совпадает с uiwait(gcf).
uiwait(h) выполнение блоков до uiresume называется или фигура, h удален. Фигура может быть той, которая создается с функцией uifigure или figure. Только фигуры, созданные с функцией figure, возвращены gcf.
uiwait(h,timeout) выполнение блоков до uiresume называется, фигура, h удален, или секунды timeout протекают. Минимальное значение timeout равняется 1. Если uiwait получает меньшее значение, он выдает предупреждение и использует 1 второй timeout.
Этот пример создает пользовательский интерфейс с кнопкой Continue. Пример вызывает uiwait, чтобы блокировать выполнение MATLAB®, пока uiresume не называется. Это происходит, когда пользователь кликает по кнопке Continue, потому что Callback кнопки, который отвечает на нажатие кнопки, вызывает uiresume.
f = figure;
h = uicontrol('Position',[20 20 200 40],'String','Continue',...
'Callback','uiresume(gcbf)');
disp('This will print immediately');
uiwait(gcf);
disp('This will print after you click Continue');
close(f);gcbf является указателем фигуры, которая содержит объект, коллбэк которого выполняется.
uiwait и uiresume функционируют блок и резюме выполнение программы Simulink® и MATLAB. uiwait также блокирует выполнение моделей Simulink. Функции pause (без аргумента) и waitfor также блокируют выполнение этим способом. uiwait является удобным способом использовать команду waitfor. Вы обычно используете его в сочетании с диалоговым окном. Это обеспечивает способ блокировать выполнение программы MATLAB, которая создала диалоговое окно, пока пользователь не отвечает на диалоговое окно. Когда используется в сочетании с модальным диалоговым окном, uiwait может блокировать выполнение программного файла и ограничить взаимодействие с пользователем диалоговым окном только.