2011-12-27 2 views
1

私はexec()メソッドでQDialogを開始しましたが、その内部のいくつかの内部オブジェクト(Qwebkit)が終了するまでは不可視にしています。私はそれを設定しQDialogコンストラクタで
QDialogをexec()メソッドで表示できないように設定するにはどうすればよいですか?

setVisible(false); 
hide() 

しかしpAuthenticationDialogContainerがQDialogへのポインタではどこで行いますとき:

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

私は数秒間QDialogを見ることができます(1〜2秒)
どうすれば完全に見えなくすることができますか?
ありがとう

+0

ダイアログにQWebViewがあり、loadFinishedシグナルが放出されたときにダイアログを表示するのは正しいですか? – graphite

+0

まあええ、私はそれを解決した – user63898

答えて

0

QDialogのclose()またはaccept()スロットでユーザーが押したボタンを接続すると考えましたか?

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

ダイアログを非表示にするはずです。このコードを正確にしてテストする必要がありますが、これは自動的にこれを行う必要があります。それ以外では、私は条件のelse句のコードを投稿すると役に立つと思います。

関連する問題