Ubuntu上qt使用SSH样式表

打印 上一主题 下一主题

主题 688|帖子 688|积分 2064

SSH样式表

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

1.编辑样式


  1. #include "widget.h"
  2. #include "ui_widget.h"
  3. #include"QLabel"
  4. Widget::Widget(QWidget *parent)
  5.     : QWidget(parent)
  6.     , ui(new Ui::Widget)
  7. {
  8.     //ui->setupUi(this);
  9.     this->setStyleSheet("QWidget {background-color:red}");
  10.     QLabel *label = new QLabel(this);
  11.     label->setGeometry(0,0,100,100);
  12.     QLabel *label1 = new QLabel(this);
  13.     label1->setGeometry(100,100,100,100);
  14.     label1->setObjectName("label1");
  15.     this->resize(800,800);
  16.     label->setStyleSheet("QLabel {background-color:blue}");
  17. }
  18. Widget::~Widget()
  19. {
  20.     delete ui;
  21. }
复制代码
他的运行效果是如许的:

我们要怎样使用SSH样式表来实现呢?
2.创建样式表文件


我们新建一个资源文件,创建好后我们将我们的样式文件写入到这个样式表中。
  1. QWidget {background-color:red}
  2. QLabel {background-color:blue}
  3. QLabel#label1 {background-color:green}
复制代码
我们写完之后运行一下,发现什么都没有!!!!!!
这是因为这个样式表是文件,我们假如要使用这个文件,我们就要读文件:(main.cpp文件)
 
  1. #include "widget.h"
  2. #include"QFile"
  3. #include <QApplication>
  4. int main(int argc, char *argv[])
  5. {
  6.     QApplication a(argc, argv);
  7.     QFile file(":/style.qss");
  8.     if(file.exists()){
  9.         file.open(QFile::ReadOnly);
  10.         QString styleSheet = QLatin1String(file.readAll());
  11.         qApp->setStyleSheet(styleSheet);
  12.         file.close();
  13.     }
  14.     Widget w;
  15.     w.show();
  16.     return a.exec();
  17. }
复制代码
然后就好啦!!!
·············································································································
总结

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

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

3.编写样式表

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



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


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

汕尾海湾

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表