[英]Ok button is not working on QDialog
我正在使用C ++ / Qt開發一個應用程序,我已經使用該設計工具設計了一個Qdialog框。
對話框定義如下。
C ++文件
#include "dialogwarning.h"
#include "ui_dialogwarning.h"
DialogWarning::DialogWarning(QWidget *parent) :
QDialog(parent),
ui(new Ui::DialogWarning)
{
ui->setupUi(this);
}
DialogWarning::~DialogWarning()
{
delete ui;
}
頭文件
#include <QDialog>
namespace Ui {
class DialogWarning;
}
class DialogWarning : public QDialog
{
Q_OBJECT
public:
explicit DialogWarning(QWidget *parent = 0);
~DialogWarning();
private:
Ui::DialogWarning *ui;
};
源使用它,如下所示:
WarningDialog = new DialogWarning();
QLabel *label = new QLabel("File/Folder name already exist", WarningDialog);
label->setGeometry(WarningDialog->rect().center().x() - label->rect().width()/2,
WarningDialog->rect().center().y() - label->rect().height()*2,
WarningDialog->rect().width(),
WarningDialog->rect().height());
WarningDialog->exec();
我使用exec而不是show,因為exec原語允許我停留在對話框中,直到按下“確定”按鈕。
奇怪的是,“確定”按鈕不起作用。 我不需要任何特定的行為,只需等待OK按下即可繼續運行代碼。
謝謝
我不確定您是否已連接所有東西。 可能是該應用程序已凍結。
為什么不將計算放在不同的線程中,並將顯示對話框的相同信號連接到線程暫停。
確定按鈕的信號應該被連接以關閉對話框並恢復線程...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.