1.效果演示
我先上效果图看看。
// 不带效果样式表
QLabel{
font: 11pt "Arial";
color:#FF00FF00;
}
// 带效果样式表
QLabel{
font: 11pt "Arial";
color:#2F00FF00;
}
我想你已经发现了,color的前两位十六进制就是表示透明度(0~255),后面的6位就是RGB。
2.思考的过程
接下来我想跟你说说,我是怎么思考的过程。这个才是解决问题的本质。
当看到UI设计师的标注图的时候。就发现一个很奇怪的地方,字体透明。这对我来说可是新鲜事情,因为之前从未见过这样的需求,可能我见识少 -_-||。
立马去项目里面看看有没有已经有了的功能,发现居然没有,我就心里好奇以前是咋玩的。没有办法只能先去bing了。但是搜索到的内容没有什么相关性。
我只能自己琢磨了。
我首先注意了style sheet里面的属性是color,我就去文档看了QColor class。嘿嘿,有了一点发现。它的构造函数QColor(int r, int g, int b, int a = 255),最后一个alpha通道就是所谓的透明度。有了这发现,剩下就是开始尝试了。
我最开始的时候设置了color:#00000FF,这个应该是全黑不透明。但实际效果确实透明的。再测试color:#FF0000FF,是蓝色的。最后有测试了几次发现前两位居然是透明度。好了,到这里我就知道color的全部东西了。
需要注意的是我在测试color的值时候,采用的是特征值,这样辨识度很高,就容易帮我排除和定位问题。