【问题标题】:Qt Message Box Won´t appear [closed]Qt消息框不会出现[关闭]
【发布时间】:2020-10-27 13:21:04
【问题描述】:

我最近开始使用 qt,出现了一个我不明白的问题:

在这个特定的代码中,我只想显示一个消息框,如果单击一个按钮并选中一个单选按钮,但消息框不会出现。有人可以帮忙吗?

#include "thirddialog.h"
#include "ui_thirddialog.h"
#include <QMessageBox>



ThirdDialog::ThirdDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::ThirdDialog)
{
    ui->setupUi(this);
    this->setWindowTitle("Eingabe UWZ");        /*Titelzeile*/
}

ThirdDialog::~ThirdDialog()
{
    delete ui;
}
void ThirdDialog::on_Back_clicked()
{
    close();
}

void ThirdDialog::on_pushButton_clicked()
{
    if(ui->radioButton->isChecked())    {
        QMessageBox::information(this,"Title","1");

    }
    if(ui->radioButton_2->isChecked())  {
        QMessageBox::information(this,"Title","2");
    }
}

【问题讨论】:

    标签: qt qmessagebox


    【解决方案1】:

    在我看来,您需要将 on_pushButton_clicked() 与 QPushButton 的 clicked() 信号连接起来。

    connect(ui->pushButton, &QPushButton::clicked, this, &ThirdDialog::on_pushButton_clicked);
    

    为此,on_pushButton_clicked() 必须是一个插槽:

    class ThirdDialog {
        Q_OBJECT
        public:
        ...
    
        public slots:
            void on_pushButton_clicked();
    
        private:
        ...
    };
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多