QDialog exec总是返回Rejected

时间:2014-11-13 09:59:05

标签: exec qdialog

我有一个QDialog框,它接受密码并有一个Ok按钮。关闭" X"上的对话框时,应调用一个函数。但即使单击“确定”按钮,也会调用该函数。 Qdialog exec函数总是返回Rejected。 代码:

if (password->exec() == QDialog::Accepted) {
  QString passwordText = passwordEntry->text();
   }
  else 
  {
  sshDialogBoxClosed();
  }
  delete password;

在任何情况下都会调用sshDialogBoxClosed()函数。 请帮我解决这个问题。 在此先感谢

1 个答案:

答案 0 :(得分:0)

您需要连接" 确定"按钮" 接受"插槽和" 取消"按钮" 拒绝"槽。

QDialog::connect(AcceptButton,SIGNAL(clicked(bool)),this,SLOT(accept()));
QDialog::connect(RejectButton,SIGNAL(clicked(bool)),this,SLOT(reject()));