Qt入门:点击按钮改变按钮的文字+怎样出现弹窗

题目要求:创建qt界面,上有一按钮,内有文字click me,点击后出现弹窗且按钮内文字变为clicked。

注意所有路径不能出现中文

出现弹窗步骤

  1. 左上方文件—>新建文件或项目

  2. 在文件和类里找到Qt—>Qt设计师界面类—>Dialog without Button(根据自己的需求选择,旁边有样式参考)
    在这里插入图片描述
    在这里插入图片描述

  3. 设置窗口的类名(这里我用默认的类名dialog)

  4. 将左侧pushButton拖到面板上(可以自定义按钮名称),右键—>转到槽
    在这里插入图片描述

  5. 弹窗设置完毕,接下来代码环节

现在的目录:
在这里插入图片描述

main.cpp,dialog.h和dialog.cpp没有什么改动,主要的改动在mainwindow.h和mainwindow.cpp

整体代码如下:

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QPushButton>//必须引入
#include <QMainWindow>
#include "dialog.h" //必须引入

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    QPushButton btn;//定义一个按钮
    Ui::MainWindow *ui;
    Dialog *dialog;//定义一个弹窗的指针

public:
    void changeText();//定义一个函数来写按钮改变文字和弹窗操作
};
#endif // MAINWINDOW_H


mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    this->setWindowTitle("按钮弹窗演示-QT");//设置主窗口的名字
    setFixedSize(600,400);//固定窗口的大小(自行设置也可以不设置,也可以只设置大小但不固定)
    btn.setText("click me"); //设置按钮内名字
    btn.setParent(this);//显示按钮
    btn.resize(200,200);//设置按钮大小
    btn.move(200,100);//设置按钮位置

    connect(&btn, QPushButton::clicked, this, MainWindow::changeText);//绑定按钮点击事件
}

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

void MainWindow::changeText()
{
    btn.setText("clicked");
    dialog = new Dialog(this);
    dialog->setModal(false);
    dialog->show();
	//作用:点击后,改变按钮内文字并出现弹窗。
}

接下来运行就完成了(三个快捷键:ctrl+b编译,ctrl+r运行,ctrl+f查找)
在这里插入图片描述

小任务完成,下期博客:qt打包成可执行文件

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值