This seems like it should be automatic, but apparently it’s not. I have the following code:
ui.my_label->setText("Test 1..."); ui.my_label->adjustSize(); processThatTakesAbout30SecondsToFinish(files.toStdString()); ui.my_label->setText("Finished."); ui.my_label->adjustSize();
What is happening is that I never
as the GUI seems to hang until the following function completes, and I eventaully only see “Finished.”.
How can I make sure the GUI is updating before it enters that function?
You shuld be able to process the event queue before entering your code if you;
and, when you want to refresh your GUI, call;
Note that it may be a good idea to let your long running process call that function now and then, to make your GUI feel more responsive.