QT学习记录,通过按钮改变窗口颜色

写在前面:
1、首先你需要一个窗口,因此在创建文件的时候,要选择mainwindow
2、文件创建好之后,是一个空白的窗口,想着做成的效果里面是需要按钮的,因此你需要在头文件内加这一行

#include <QPushButton>//引用QPushButton类对应的头文件
3、按钮对应的类创建好之后,建立两个对象,两个对象对应两个按钮
private:
    //声明两个QPushButton对象
    QPushButton *pb1,*pb2;

4、qt的信号与槽机制,为了你后面点击按钮,窗口会有变化,这个时候,你还需要建立两个槽函数,一个按钮,对应一个槽函数

 private slots://定义槽函数
    //声明对象pb1,pb2的槽函数
    void pushbutton1_clicked();
    void pushbutton2_clicked();

5、在头文件中添加好这些后,后面就是需要让你做的这些东西,在窗口显示了,首先,我们先让窗口的名称改变一下

setWindowTitle("点击按钮改变颜色");

7、设置一下,该窗口在你电脑屏幕显示的位置和大小

this->setGeometry(300,300,500,300);//前面两个是在屏幕的位置,后面两个的窗口的长和宽

8、在窗口中定义按钮,以及他的大小,名称(如果名称是乱码,就使用注释里面的)

 //pb1 = new QPushButton(QString::fromLocal8Bit("命令按钮1"),this);
    //pb2 = new QPushButton(QString::fromLocal8Bit("命令按钮2"),this);
    //如果出现乱码就按照上面这种方式
    pb1 = new QPushButton("命令按钮1",this);
    pb2 = new QPushButton("命令按钮2",this);

    //设置两个QPushButton对象的坐标位置
    pb1->setGeometry(20,20,90,50);
    pb2->setGeometry(20,90,90,50);

9、接下来就是槽函数了,也就是说,点击按钮的时候,你想要什么效果,就在槽函数中定义,我想要让这个窗口改变颜色,如下列所示:

void MainWindow:: pushbutton1_clicked()
{
    this->setStyleSheet("QMainWindow {background-color:rgba(255,255,0,100%);}");
}
void MainWindow:: pushbutton2_clicked()
{
    this->setStyleSheet("QMainWindow{background-color:rgba(255,192,203,100%);}");
}

10,将按钮与信号槽连接

 //与信号槽函数连接
    connect(pb1,SIGNAL(clicked()),this,SLOT(pushbutton1_clicked()));
    connect(pb2,SIGNAL(clicked()),this,SLOT(pushbutton2_clicked()));

 11、展示效果,点击按钮1时变成黄色,点击按钮2时变成粉红色

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值