C++ MessageBox的Qt实现

C++ MessageBox的Qt实现,c++,linux,qt,C++,Linux,Qt,参考前面的一个问题: 我有一个非常类似的问题,除了用Qt代替GTK 在这个问题上,我至少需要做些什么才能使用Qt从一个还不是Qt应用程序的应用程序中显示一个消息对话框 我认为需要发生以下情况: 初始化Qt及其事件循环 安装空闲回调调用对话框 退出事件循环并在对话框关闭时完成Qt 您正试图显示来自控制台应用程序的消息框,对吗 如果这是正确的,您需要在pro文件中添加此行: QT+=gui 在main.cpp文件中完成此操作后,请编写如下内容。Qt为您创建一个事件循环 #include <Q

参考前面的一个问题:

我有一个非常类似的问题,除了用Qt代替GTK


在这个问题上,我至少需要做些什么才能使用Qt从一个还不是Qt应用程序的应用程序中显示一个消息对话框

我认为需要发生以下情况:

  • 初始化Qt及其事件循环
  • 安装空闲回调调用对话框
  • 退出事件循环并在对话框关闭时完成Qt

您正试图显示来自控制台应用程序的消息框,对吗

如果这是正确的,您需要在pro文件中添加此行:

QT+=gui

在main.cpp文件中完成此操作后,请编写如下内容。Qt为您创建一个事件循环

#include <QtCore/QCoreApplication>
#include <QTextStream>
#include <QMessageBox>
#include <QApplication>




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

    QMessageBox::information(NULL,"Hello","Salut","Ok");

    return a.exec();
}
#包括
#包括
#包括
#包括
int main(int argc,char*argv[])
{
质量保证申请a(argc、argv);
QMessageBox::信息(NULL,“Hello”、“salt”、“Ok”);
返回a.exec();
}

“来自一个尚未成为Qt应用程序的应用程序”,但您假设QMake
.pro
文件已经存在。是的,我不会使用QMake。我不关心构建配置。我在这里没有看到任何东西会告诉主事件循环终止。消息框是否成为“主窗口”,从而导致事件循环在关闭时终止?