【问题标题】:Showing a messagebox from library显示库中的消息框
【发布时间】:2017-01-02 00:25:07
【问题描述】:

我需要从我的静态库中向用户显示一个消息框,但使用 QMessageBox 需要 QApplication

如何在没有QApplication 的情况下显示消息框?

【问题讨论】:

  • 可能是对MessageBox 的原始调用?您无需填写所有者窗口。
  • @RadLexus:我需要一个跨平台消息框,MessageBox 是特定于 Windows 的

标签: qt qmessagebox qapplication


【解决方案1】:

只需在应用程序的生命周期内实例化 QApplication 的实例。 (例如,在您的“main”、“WinMain”或应用程序初始化序列的早期)

从那时起,您可以随心所欲地创建QMessageBox 的模态实例。只要您使用的是最新版本的 Qt,它应该可以与您自己的消息泵共存。

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QMessageBox msgBox;
    msgBox.setText("Hello World");
    msgBox.exec();  // blocks until the user finishes interacting with the message box

    return 0;
}

【讨论】:

    猜你喜欢
    • 2012-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-15
    • 2012-04-29
    • 1970-01-01
    相关资源
    最近更新 更多