我有一个QLabel,我用setpixmap()在上面放了一个图像。该图像具有 Alpha 通道。
QLabel位于QWidget上,QWidget具有由图像指定的边框图像(以便重新缩放图像以填充QWidget)。
在QLabel的透明部分,结果不是QWidget上指定的图像,而是"无颜色"小部件的灰色特征。
我的问题是我如何使QLabel的透明部分显示QWidget的边框图像
?我尝试取消自动填充背景,将 QLabel 的背景颜色更改为白色透明,但没有帮助。
您需要适当地设置小部件属性和窗口标志:
使用 QWidget::setAttribute()
和 Qt::WidgetAttribute...
Qt::WA_TranslucentBackground
需要设置为 true。
除了学习窗口标志示例应该会有很大帮助。
如果您只是在寻找一个绘制无框图像的单个小部件......
这是一个完美的例子:
QSplash屏幕更换