Я пытаюсь добавить динамический индикатор в графическом интерфейсе.Отмечу, что есть несколько доступных решений ( Как добавить индикатор выполнения в Matlab GUI? ).Мой метод основан на создании двух панелей разных цветов, одна для фона, а другая для переднего плана (т. Е. Индикатор выполнения).Мои коды следующие:
bar = uipanel('Parent',handles.bgProgressBar,'BackgroundColor','r');
%Note: bgPogressBar is the tag of a panel manually added with GUIDE
barPosition = get(bar,'Position');
cnt = 0
for ii = 1:S
for jj = 1:T
do something
….
cnt = cnt + 1;
progress = cnt/(S*T);
barPosition(3) = progress;
barPosition;
set(bar,'Position',barPosition);
end
end
Проблема здесь в том, что панель не обновляется в реальном времени.Он не отвечает, а только прогрессирует до конца, когда цикл завершен.Можно ли добавить динамически прогрессирующую панель в графическом интерфейсе?