Блокируйте выполнение программы и ожидайте, чтобы возобновиться
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
может блокировать выполнение программного файла и ограничить взаимодействие с пользователем диалоговым окном только.