QT开发中文网

Qt中点击按钮出现弹框,并在弹框中写入内容

  1. 创建一个按钮并连接到槽函数

在Qt设计师中拖动一个按钮控件,设置好按钮的文字和样式。然后将按钮的clicked()信号连接到一个槽函数,这个槽函数用于弹出消息框。

connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(showMessage()));
  1. 创建一个槽函数

在类中创建一个槽函数showMessage(),用于弹出消息框。在该函数中可以使用QMessageBox类来创建一个消息框。

void MainWindow::showMessage()
{
    QMessageBox::information(this, "提示", "你点击了按钮");
}

上面代码中,QMessageBox的第一个参数是指定父窗口,第二个参数是消息框的标题,第三个参数是消息框的内容。

  1. 弹出自定义消息框

如果需要在消息框中写入自己的内容,可以使用QDialog类来创建一个自定义的消息框。首先,在Qt设计师中创建一个对话框界面,添加需要的控件。然后,在槽函数中调用该对话框,并显示。

void MainWindow::showMessage()
{
    QDialog *dialog = new QDialog(this);
    dialog->setWindowTitle("自定义弹框");

    QVBoxLayout *layout = new QVBoxLayout;
    QLabel *label = new QLabel("这是自定义弹框");
    layout->addWidget(label);
    dialog->setLayout(layout);

    dialog->exec();
}

上面代码中,首先创建一个QDialog对象(注意设置父窗口),然后创建一个垂直布局器QVBoxLayout,并添加一个标签控件。最后,将布局器设置为对话框的主布局,调用exec()函数显示对话框。

完整代码如下:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox>
#include <QDialog>
#include <QVBoxLayout>
#include <QLabel>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(showMessage()));
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::showMessage()
{
    QDialog *dialog = new QDialog(this);
    dialog->setWindowTitle("自定义弹框");

    QVBoxLayout *layout = new QVBoxLayout;
    QLabel *label = new QLabel("这是自定义弹框");
    layout->addWidget(label);
    dialog->setLayout(layout);

    dialog->exec();
}

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=865

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?