如何在所有窗口之上显示QMessageBox

Att*_*que 6 qt dialog qmessagebox

我创建了一个与全屏应用程序一起运行的程序.我希望我的程序中的QMessageBox显示在全屏运行的应用程序之上.

该平台是Windows 7,我正在使用Qt.

我试过了:

QMessageBox *msgBox = new QMessageBox;
msgBox->setParent(0);
msgBox->setWindowTitle(title);
msgBox->setText(text);
msgBox->setWindowFlags(Qt::WindowStaysOnTopHint);
msgBox->show();
Run Code Online (Sandbox Code Playgroud)

没有运气.任何提示?

Seb*_*nge 3

TrymsgBox->raise();会通知任务栏中的用户,使用setWindowFlags(Qt::WindowStaysOnTopHint);you 最终可以使其保持在顶部(evtl.最小化/恢复)。但是,不依赖于操作系统的窗口管理器在设计上不应允许任何应用程序从另一个应用程序“窃取”焦点,因此用户仍然需要激活(单击)您的窗口以获得焦点。