汕尾海湾 发表于 2024-9-2 10:14:26

Ubuntu上qt使用SSH样式表

SSH样式表

假如学习过web的同学都知道,我们在学习HTML的时间会用到样式表,我们使用它来更改我们的颜色、巨细、配景等等。上到后面,老师会说:我们假如在HTML文件中编辑太多的样式,就会让代码看起来非常的繁琐,所以我们开始学习了CSS样式,那么在QT中我们也同样会使用。那我们就开始学习吧!‘

1.编辑样式

#include "widget.h"
#include "ui_widget.h"
#include"QLabel"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    //ui->setupUi(this);
    this->setStyleSheet("QWidget {background-color:red}");
    QLabel *label = new QLabel(this);
    label->setGeometry(0,0,100,100);


    QLabel *label1 = new QLabel(this);
    label1->setGeometry(100,100,100,100);
    label1->setObjectName("label1");

    this->resize(800,800);
    label->setStyleSheet("QLabel {background-color:blue}");
}

Widget::~Widget()
{
    delete ui;
}
他的运行效果是如许的:
https://i-blog.csdnimg.cn/direct/16836d5bf2e143a4bcfb936903e2979f.png
我们要怎样使用SSH样式表来实现呢?
2.创建样式表文件

https://i-blog.csdnimg.cn/direct/a0fe8b62c64049ed8c7d6e0671bb16c4.png
我们新建一个资源文件,创建好后我们将我们的样式文件写入到这个样式表中。
QWidget {background-color:red}
QLabel {background-color:blue}
QLabel#label1 {background-color:green}
我们写完之后运行一下,发现什么都没有!!!!!!
这是因为这个样式表是文件,我们假如要使用这个文件,我们就要读文件:(main.cpp文件)
 
#include "widget.h"
#include"QFile"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QFile file(":/style.qss");
    if(file.exists()){
      file.open(QFile::ReadOnly);
      QString styleSheet = QLatin1String(file.readAll());
      qApp->setStyleSheet(styleSheet);
      file.close();
    }

    Widget w;
    w.show();
    return a.exec();
}
然后就好啦!!!
·············································································································
总结

我们使用样式表,起首
1.创建样式表

2.定义UI         好比:按钮、label等

3.编写样式表

4.在main.cpp文件中读文件



好了  下课!!!!!!!!!!!!!!!!!


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Ubuntu上qt使用SSH样式表