c++ - QDialog 显示命令为空白

标签 c++ qt visual-studio-2008

如果我创建我的 QDialog 并使用 exec() 以模态显示它,一切正常,但我不需要这个非模态!

使用 show() 对话框是空的!

ProgramLoading *programLoading = new ProgramLoading();  
programLoading->show(); 

// some code

programLoading->done(0);

构造函数

ProgramLoading::ProgramLoading(QWidget *parent)
    : QDialog(parent)
{
    ui.setupUi(this);

    setWindowFlags( Qt::CustomizeWindowHint ); // remove window border
}

不要认为 Dialog 代码有问题,因为它与 exec() 一起工作!

有什么提示吗?谢谢!

PS: 我正在使用 VisualStudio 2008 的 QT 插件

最佳答案

mw(带有窗口装饰的默认值):

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    sd = new SplashDialog();
    sd->show();

    QTimer::singleShot(10000,this,SLOT(closeSplashDialog()));
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::closeSplashDialog()
{
    sd->close();
    delete sd;
}

启动画面(具有标签和按钮的 UI):

SplashDialog::SplashDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::SplashDialog)
{
    ui->setupUi(this);

    setWindowFlags( Qt::CustomizeWindowHint );
}

SplashDialog::~SplashDialog()
{
    delete ui;
}

Splash Dialog 打开并在 10 秒后按预期关闭

关于c++ - QDialog 显示命令为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23106731/

相关文章:

c++ - QT ButtonGroup 和可检查的按钮 : how to connect toggled signal with int and bool?

c++ - Qt Creator - 来自设计器的 GUI 与来自代码的 GUI - 如何访问元素的功能

css - Qt 的应用程序范围样式表未被本地默认样式表覆盖

c++ - 可以在没有主体的情况下调用声明的函数

c++ - 在基于范围的 for 循环中从容器中删除元素

c++ - gsoap - 使用 -lcrypt 编译

java - 在实例变量和方法之前写 "this."是好还是坏风格?

c++ - 如何在 C++ 中调用函数时打印每个函数名称?

visual-studio-2008 - VS2005解决方案批量升级到VS2008

c++ - 即使在设计器中更改高度后,组合框下拉菜单也不起作用