强制MatlabGUI更新ui控件中间函数

强制MatlabGUI更新ui控件中间函数,matlab,Matlab,我正在使用MATLAB中的GUIDE开发一个gui,据我所知,MATLAB每隔一段时间就会根据计时器更新UI控件。有没有办法强迫它更新UI控件,这样我就可以在函数的中间进行更新?现在我有一个函数,简化了,类似 set(handles.lblStatus,'String','Processing...') %function that takes a long time set(handles.lblStatus,'String','Done') 由于MATLAB在回调函数期间不更新GUI,用户

我正在使用MATLAB中的GUIDE开发一个gui,据我所知,MATLAB每隔一段时间就会根据计时器更新UI控件。有没有办法强迫它更新UI控件,这样我就可以在函数的中间进行更新?现在我有一个函数,简化了,类似

set(handles.lblStatus,'String','Processing...')
%function that takes a long time
set(handles.lblStatus,'String','Done')
由于MATLAB在回调函数期间不更新GUI,用户在长时间等待后只看到“完成”,而从未看到“处理”。我尝试在第一组之后添加
guidata(hObject,handles)
,希望它能强制屏幕更新,但是没有。尝试调用

我相信matlab中有一个函数

drawnow
完成挂起的绘图事件


我一直不太明白为什么人们会把以前的答案中的信息复制成新的答案。我认为如果你能给出更好的描述,或者更多的例子,或者更多的链接,或者它们在几分钟之内,那么可能在你加载页面时不存在,但在10分钟之后或者更糟糕的情况下就不存在了。是的,在我回答的时候,还有别的事情需要我注意。抱歉迟到了这不是一个计时器,而是另一个更新UI的线程(EDT)
set(handles.lblStatus,'String','Processing...')
drawnow
%function that takes a long time
set(handles.lblStatus,'String','Done')