1

我用 exec() 方法启动 QDialog,现在我喜欢它不可见,直到它内部的一些内部对象(Qwebkit)完成它的东西。
在 QDialog 构造函数中,我将其设置为:

setVisible(false);
hide()

但是当我这样做时 pAuthenticationDialogContainer 是指向 QDialog 的指针:

if(pAuthenticationDialogContainer->exec() != QDialog::Accepted ) { ....}

我可以看到 QDialog 几秒钟(1-2 秒)
我怎样才能让它完全不可见?
谢谢

4

1 回答 1

0

您是否考虑过连接用户按下的按钮close()accept()QDialog 中的插槽?

connect(pAuthenticationDialogContainer->loginButton,
        SIGNAL(clicked()),
        pAuthinticationDialogContainer,
        SLOT(accept()));

应该隐藏对话框。您必须使此代码准确并对其进行测试,但这应该会自动为您完成。除此之外,我认为发布else条件条款的代码会有所帮助。

于 2011-12-27T21:53:12.787 回答