pyqt5页面美化全流程摸索(一)——为控件修改样式及自定义一张图片作为背景

这里我们进行了最简单的页面设置
可以查看我的这篇文章:windows10使用cuda11搭建pytorch深度学习框架——vscode配置pyqt5+简单制作页面+打包全过程
能够获得最简单的页面

但是我觉得他的基础页面太丑了
想要美化一下
该怎么办呢

背景添加一张图片

首先查看这篇教程为背景添加一张背景图片
在这个地方我其实卡了挺久
但最后靠这篇教程弄出来了!感谢博主!

样式表语句总结

这里参考了这篇文章
但是我觉得用样式表直接设置可以看到结果就很简单
所以这里直接右键控件
修改样式就可
在这里插入图片描述

背景不要写background-color
我就是因为之前大佬写的这个 背景颜色就填充的不对
要写成下面这个就可以

渐变色设置:

background: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(251,102,102, 200), stop:1 rgba(20,196,188, 210));

设置完之后编译运行 报错了
Traceback (most recent call last):
File “c:/Users/Administrator/Desktop/Deepl/act_deepl.py”, line 36, in
from Ui_deepl import Ui_MainWindow #导入你写的界面类
File “c:\Users\Administrator\Desktop\Deepl\Ui_deepl.py”, line 14, in
class Ui_MainWindow(object):
File “c:\Users\Administrator\Desktop\Deepl\Ui_deepl.py”, line 197, in Ui_MainWindow
import background_rc
ModuleNotFoundError: No module named ‘background_rc’

这就是Qt Designer生成的.ui文件转化成.py文件后背景图片消失

参考一下这篇博客

我发现我的图片下面是有这个qrc文件的
在这里插入图片描述
但是如何把它转化成py文件呢
使用pyrcc5命令

pyrcc5 resource.qrc -o resource_rc.py

就可以完成啦
在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
PyQt5界面设计中,可以使用QPalette或QSS来设置背景图。使用QPalette时,可以通过设置QBrush的QPixmap来指定背景图片,当图片大小大于窗口大小时,背景图片会平铺整个窗口;当图片大小小于窗口大小时,会加载多个背景图片。另外,也可以使用QSS来设置背景色或背景图片,通过设置QWidget的ObjectName和调用setStyleSheet方法来实现。 示例代码1: 使用QPalette设置背景图片 ```python import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class MainWindow(QWidget): def __init__(self, parent=None): super().__init__(parent) palette = QPalette() palette.setBrush(QPalette.Background, QBrush(QPixmap("background.png"))) self.setPalette(palette) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ``` 示例代码2: 使用QSS设置背景色或背景图片 ```python import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class MainWindow(QWidget): def __init__(self, parent=None): super().__init__(parent) self.setObjectName("mainWindow") qss = "QWidget#mainWindow{background-color:black;}" # 设置背景色 # qss = "QWidget#mainWindow{border-image:url(background.png);}" # 设置背景图片 self.setStyleSheet(qss) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ``` 示例代码3: 使用QPalette设置背景颜色 ```python import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class MainWindow(QWidget): def __init__(self, parent=None): super().__init__(parent) palette = QPalette() palette.setColor(QPalette.Background, Qt.black) # 设置背景颜色为黑色 self.setPalette(palette) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Laney_Midory

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值