У меня есть этот код, который показывает всплывающее окно с сообщением во время выполнения длительной операции. Когда операция завершается, сообщение исчезает.
Это отлично работает в ma c, но в Windows всплывающее окно появляется и сразу исчезает.
Как я могу это исправить?
void myMainWindow::loadingModal(QString msg)
{
QMessageBox msgBox(pqCoreUtilities::mainWidget());
msgBox.setText("<p align='center'>" + msg + "</p>");
msgBox.setStandardButtons(0);
msgBox.setStyleSheet("margin-right: 20px;"
"margin-top: 20px;"
"color: rgb(72, 66, 66);"
"font-family: NunitoSans-SemiBold;"
"font-size: 14px;"
"font-weight: 600;");
msgBox.show();
pqEventDispatcher::processEventsAndWait(100);
}
void myMainWindow::btn_calculated_pressed()
{
// code
loadingModal("Wait until calculation ends.")
// time-consuming task starts
}