Я работаю над gui, используя GUIDE в MATLAB, и из того, что я прочитал, похоже, что MATLAB постоянно обновляет элементы управления пользовательского интерфейса на основе таймера. Есть ли способ заставить его обновить элементы управления пользовательского интерфейса, чтобы я мог обновить его в середине функции? Сейчас у меня есть функция, которая делает, упрощенный, что-то вродеСила matlab gui для обновления ui control mid-function
set(handles.lblStatus,'String','Processing...')
%function that takes a long time
set(handles.lblStatus,'String','Done')
Поскольку MATLAB не обновлять GUI во время функции обратного вызова, пользователь только когда видит «Готово» после длительного периода ожидания и никогда не видит «Обработка». Я попытался добавить guidata(hObject, handles)
после первого набора, надеясь, что он заставит экран обновиться, но это не так.
Это не таймер, а другой поток (EDT), который обновляет пользовательский интерфейс http://undocumentedmatlab.com/blog/matlab-and-the-event-dispatch- thread-edt/ – Mikhail