当底层QMainwindow具有背景图像时,QLabel不透明度出现问题

时间:2011-03-11 06:34:42

标签: c++ qt qt4 stylesheet

我正在使用Qt 4.6和一个只有QMainwindow和背景图像的简单应用程序(通过stylesheet属性设置为ressource文件中的图像)。

如果在此窗口中添加QLabel并将其设置为背景颜色(也通过样式表),则生成的标签不是不透明的。标签的背景颜色没有填充我选择的颜色。相反,结果是背景图像像素的奇怪混合。

如果删除主窗口的背景图像,标签会正确填充背景颜色。

我尝试使用标签的autoFillBackground属性以及通过label-> setAttribute()函数设置的Qt :: WidgetAttribute但没有成功。

任何人都知道我为什么得到这个结果以及如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

这适用于Win7 + Qt 4.7.1的

setStyleSheet("QMainWindow { background-image: url(:/bg.jpg); } \
               QLabel { background-color: rgba(0, 255, 0, 90); } ");