Я хотел бы показать метку и выполнить функцию после отображения метки. К сожалению, метка всегда отображается после выполнения функции.
void MainWindow::showLabel(){
myLabel->show();
doSomething();
}
void MainWindow::doSomething(){
QThread::msleep(3000);
myLabel->hide();
}
Итак, когда я выполняю свой код, программа ждет три секунды и впоследствии показывает пустое окно (так как оно непосредственно скрывает метка, прежде чем даже показывать ее; если я прокомментирую функцию скрытия, метка будет показана через три секунды). Я попытался изменить showEvent следующим образом:
void MainWindow::showEvent(QShowEvent *event) {
QMainWindow::showEvent(event);
doSomething();
}
Я что-то не так делаю, изменив метод, или есть какой-либо другой способ показать метку перед выполнением следующей функции?