Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Qt如何在主应用程序完全加载所有小部件时打开QDialog_C++_Qt - Fatal编程技术网

C++ Qt如何在主应用程序完全加载所有小部件时打开QDialog

C++ Qt如何在主应用程序完全加载所有小部件时打开QDialog,c++,qt,C++,Qt,大家好 我有主windows应用程序,我喜欢在应用程序(qMainWindow)启动时弹出设置对话框 车满了吗?我试图在主窗口构造函数中: SettingsDialog settingsDialog; settingsDialog.exec(); 但是当我启动应用程序时,我看到QDialog和主窗口在后台最小化 我需要我的主窗口将在后台但不最小化,中间的q对话阻止主 windows直到ok按钮被预设使用时间间隔为零的QTimer::singleShot,当构造函数和show()完成时,它将从事

大家好 我有主windows应用程序,我喜欢在应用程序(qMainWindow)启动时弹出设置对话框
车满了吗?我试图在主窗口构造函数中:

SettingsDialog settingsDialog;
settingsDialog.exec();
但是当我启动应用程序时,我看到QDialog和主窗口在后台最小化
我需要我的主窗口将在后台但不最小化,中间的q对话阻止主
windows直到ok按钮被预设

使用时间间隔为零的
QTimer::singleShot
,当构造函数和
show()
完成时,它将从事件循环调用指定的插槽。以下是一个例子:

#include <QtCore/QTimer>
#include <QtGui/QApplication>
#include <QtGui/QDialog>
#include <QtGui/QMainWindow>

class MW : public QMainWindow
{
  Q_OBJECT
public:
  MW();
private slots:
  void showDialog();
};

MW::MW()
{
  QTimer::singleShot(0, this, SLOT(showDialog()));
}

void MW::showDialog()
{
  QDialog d;
  d.setWindowTitle("dialog");
  d.exec();
}

int main(int argc, char* argv[])
{
  QApplication app(argc, argv);
  MW mw;
  mw.show();
  app.exec();
}
#包括
#包括
#包括
#包括
MW类:公共QMainWindow
{
Q_对象
公众:
MW();
专用插槽:
void showDialog();
};
MW::MW()
{
QTimer::singleShot(0,这个,插槽(showDialog());
}
void MW::showDialog()
{
QDialog d;
d、 setWindowTitle(“对话框”);
d、 exec();
}
int main(int argc,char*argv[])
{
QApplication应用程序(argc、argv);
兆瓦;
mw.show();
app.exec();
}

Try谢谢,我确实试过了,它会弹出对话框窗口,但主窗口在后台仍然最小化,启动时我需要类似QT Creator的弹出窗口