QWidget 添加背景图片问题
QWidget 创建的窗口有时并不能直接用 setStyleSheet 设置窗口部分样式
比如背景图,在Qt Designer 设置好背景图样式了 QWidget#Form{ … } 并能看到效果
但转为 python3 代码后,运行程序显示不了这个背景图
如果样式使用的是 background-image 就好办了,
直接使用下面代码替换,即使用 QPalette 控件重新画背景图
palette = QPalette()
palette.setBrush(QPalette.Background, QBrush(QPixmap(":/pic/images/sysBackground.jpg")))
self.setPalette(palette)
QSS 背景图样式区别:
- background-image: 背景图,默认原图大小,窗口空余部分填充此背景图
- border-image: 默认跟随窗口大小进行拉伸
- image: 默认原图大小,窗口空余部分不补充