QSS文件详解

SS文件说明

qss语法是在css2.0的基础上开发的,所以基本支持css2.0的特性

QSS语法

  1. 选择器: #<控件名> 相当于css中的id选择器
    .<类名> 类选择器
  2. 样式: css2.0语法
  3. 重点介绍下,伪类选择器。

QSS文件说明

qss语法是在css2.0的基础上开发的,所以基本支持css2.0的特性

QSS语法

  1. 选择器: #<控件名> 相当于css中的id选择器
    .<类名> 类选择器
  2. 样式: css2.0语法
  3. 重点介绍下,伪类选择器。

伪选择器以冒号(:)表示,与css里的伪选择器相似,是基于控件的一些基本状态来限定程序的规则,如hover规则表示鼠标经过控件时的状态,而press表示按下按钮时的状态。如:

QPushButton:hover {
    Background-color:red;
}

表示鼠标经过时QPushButton背景变红。

Pseudo还支持否定符号(!),如:
QRadioButton:!hover { color: red }
表示没有鼠标移上QRadioButton时他显示的颜色是red。

Pseudo可以被串连在一起,比如:
QPushButton:hover:!pressed { color: blue; }
表示QPushButton在鼠标移上却没有点击时显示blue字,但如果点击的时候就不会显示blue颜色了。

同样可以和之前所讲的子控件选择器一起联合使用,如:
QSpinBox::down-button:hover { image: url(btn-combobox-press.bmp) }

与前面所讲的一样,伪选择器,子控件选择器等都是可以用逗号(,)分隔表示连续相同的设置的,如:

QPushButton:hover,QSpinBox::down-button, QCheckBox:checked{
     color: white ;image: url(btn-combobox-press.bmp);}

QSS使用

  1. 直接在源码中编写。
qApp->setStyleSheet("QPushButton#firstBtn{color:yellow;background-color:blue}QssDemo{background-color:orange}");
  1. 使用文件加载
QFile styfile("xxxx/xxx/style.qss");
styfile.open(QFile::ReadOnly);
QString sty = QString::fromlatin1(styfile.readAll());
styfile.close;

setStyleSheet(sty);
伪选择器以冒号(:)表示,与css里的伪选择器相似,是基于控件的一些基本状态来限定程序的规则,如hover规则表示鼠标经过控件时的状态,而press表示按下按钮时的状态。如:
```
QPushButton:hover {
    Background-color:red;
}
```
表示鼠标经过时`QPushButton`背景变红。

`Pseudo`还支持否定符号`(!)`,如:
`QRadioButton:!hover { color: red }`
表示没有鼠标移上`QRadioButton`时他显示的颜色是red。

`Pseudo`可以被串连在一起,比如:
`QPushButton:hover:!pressed { color: blue; }`
表示`QPushButton`在鼠标移上却没有点击时显示blue字,但如果点击的时候就不会显示blue颜色了。

同样可以和之前所讲的子控件选择器一起联合使用,如:
`QSpinBox::down-button:hover { image: url(btn-combobox-press.bmp) }`

与前面所讲的一样,伪选择器,子控件选择器等都是可以用逗号(,)分隔表示连续相同的设置的,如:
```
QPushButton:hover,QSpinBox::down-button, QCheckBox:checked{
     color: white ;image: url(btn-combobox-press.bmp);}
```
![图 2](../images/c32bd82d5c6e90e7ef588b0ddfc0c92a619a439bbe66122b2b98da11db5b4019.png)  

![图 3](../images/4548b218cc0ff32d7ce3a9fc025e55674927b46e02e3c5859522984ddfe6056f.png)  

QSS使用

  1. 直接在源码中编写。
qApp->setStyleSheet("QPushButton#firstBtn{color:yellow;background-color:blue}QssDemo{background-color:orange}");
  1. 使用文件加载
QFile styfile("xxxx/xxx/style.qss");
styfile.open(QFile::ReadOnly);
QString sty = QString::fromlatin1(styfile.readAll());
styfile.close;

setStyleSheet(sty);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值