PyQt5_添加背景图像

创建工程后,新添加一个UI文件,让UI代码和逻辑语句分离

选中UI文件,在工具菜单中进入窗口设计器

会提示没有窗口,创建一个

选择窗口,找到styleSheet编辑样式,添加背景图片

创建和添加资源文件

在右侧右键选择添加前缀,然后删除前缀文本因为我把图像文件放在工程目录下所以没有路径前缀,接着在前缀上右键选择添加文件

打开图像文件

窗口中显示出背景图像

另存为.ui格式文件

回到编译器中再次选择UI文件,在工具中将ui设计文件转换为python代码

 

右键项目选择添加现有项

将筛选改为所有文件,选择.qrc文件添加

选择.qrc文件,在工具中将资源文件转换为代码文件

我裂开了,设置的按源文件名称保存,但这样就会覆盖掉之前的逻辑代码文件,算了,覆盖后再重新创建一个

这一大串字符串就是图像文件底层的样子吧

UI文件里已经自动引用了资源文件,但是名称是错的,注释掉然后改为正确的

重新创建一个主逻辑文件

# -*- coding: utf-8 -*-
 
import PyQt5
 
import sys
import cv2
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.QtGui import QImage, QPixmap

from UI import Ui_MainWindow
 
class MyWindow(QMainWindow, Ui_MainWindow):
 def __init__(self, *args, **kwargs):
     super().__init__(*args, **kwargs)
     self.setupUi(self)
     
 
if __name__ == "__main__":
 app = QApplication(sys.argv)
 mainWindow = MyWindow()
 mainWindow.show()
 sys.exit(app.exec_())

运行jio本

  • 10
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
PyQt5中,可以通过QPixmap和QPalette类来为界面添加背景。 添加背景的第一步是创建一个QPixmap对象,该对象将会加载所需的背景图像。可以使用QPixmap的load()方法加载本地图像文件,或者使用fromImage()方法从QImage对象加载图像。例如,以下代码加载了名为"background.jpg"的图像: ```python background = QPixmap("background.jpg") ``` 接下来,需要创建一个QPalette对象,并将背景图像设置为QPalette的背景纹理。通过调用setBrush()方法,可以将背景纹理设置为QPalette.Base或QPalette.Window。例如: ```python palette = QPalette() palette.setBrush(QPalette.Background, QBrush(background)) ``` 在这个例子中,背景图像被设置为QPalette.Background。 最后一步是将上述创建的QPalette对象应用于要添加背景的窗口。可以通过调用窗口的setPalette()方法来实现,如下所示: ```python window.setPalette(palette) ``` 这样,背景图像就会成功地添加PyQt5界面中了。 完整的代码示例: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow from PyQt5.QtGui import QPixmap, QPalette, QBrush class MainWindow(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): # 创建背景图像 background = QPixmap("background.jpg") # 创建QPalette对象并设置背景图像 palette = QPalette() palette.setBrush(QPalette.Background, QBrush(background)) # 将QPalette对象应用于窗口 self.setPalette(palette) self.setWindowTitle("PyQt5 Background Example") self.setGeometry(200, 200, 500, 300) self.show() if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() sys.exit(app.exec_()) ``` 请确保将示例代码中的"background.jpg"替换为你自己的背景图像的路径。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值