天天看点

关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案

1.问题描述

在Ubuntu(目前测试的Ubuntu14.04,虚拟机VMware14)系统中对QComboBox/QCheckBox设置qss样式时,对其设置color属性不生效或QComboBox只对下拉列表生效的。

1.编辑只设置了color属性(如下图)。

QComboBox {
color: rgb(255, 0, 0);
}
QCheckBox {
color: rgb(255, 0, 0);
}
           
关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案

2.运行

QComboBox本身正常状态下,字体颜色没有改变,设置的color属性此时无效(如下图)。

关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案

但是展开QComboBox后,发现下拉框中的item字体颜色改变。

关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案

2.解决方案

1.在QComboBox/QCheckBox的qss中加入padding属性,字体颜色属性color即对QComboBox/QCheckBox生效。

QComboBox {
color: rgb(255, 0, 0);
padding: 0px 0px 0px 4px;
}
QCheckBox {
color: rgb(255, 0, 0);
padding: 0px 0px 0px 0px;
}
           
关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案

QCheckBox字体颜色属性color与QComboBox同理。

2.运行结果

关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案
关于Linux系统(Ubuntu14.04)上QComboBox/QCheckBox设置qss样式表字体颜色color属性不生效或QComboBox只对下拉列表生效的解决方案

继续阅读