pyqt5设置背景图片

PyQt5设置背景图片

1、打开QTDesigner

在这里插入图片描述

创建一个UI,camera.ui

2、创建一个pictures.qrc文件

在ui文件同级目录下先创建一个pictures.txt,填写内容:

<RCC><qresource prefix="media"><file>1.jpg</file></qresource>
</RCC>

在这里插入图片描述

如图:
在这里插入图片描述

3、添加背景图片

3.1、选择label控件

并命名为label_video
在这里插入图片描述

3.2、选中label,右键->改变样式表->添加资源->background-image

在这里插入图片描述

3.3、添加pictures.qrc

在这里插入图片描述

3.4、添加前缀

在这里插入图片描述

3.5、添加背景图

在这里插入图片描述

3.6、保存

在这里插入图片描述

4、转py文件

4.1、把UI转成py文件

在这里插入图片描述

4.2、把qrc转py文件

在这里插入图片描述

4.3、项目目录

在这里插入图片描述

5、打开摄像头代码

# !/usr/bin/python
# -*- coding: utf-8 -*-"""
@contact: 微信 1257309054
@file: t.py
@time: 2023/9/10 0:16
@author: LDC
"""import sysimport cv2
from PyQt5 import QtCore
from PyQt5 import QtWidgets, QtGui
from PyQt5.QtGui import QPixmap, QImagefrom camera import Ui_MainWindowclass OpenCamera(QtWidgets.QMainWindow, Ui_MainWindow):def __init__(self):super(OpenCamera, self).__init__()self.setupUi(self)  # 创建窗体对象self.init()self.label_video.setScaledContents(True)  # 图片自适应def init(self):# 打开摄像头self.btn_open_camera.clicked.connect(self.open_camera)# 关闭摄像头self.btn_close_camera.clicked.connect(self.close_camera)def open_camera(self):# 打开摄像头self.is_close = Falsecap = cv2.VideoCapture(0)w, h = 640, 360cap.set(3, w)cap.set(4, h)while True:success, img = cap.read()mirrow = cv2.flip(img, 1)width, height = mirrow.shape[:2]  # 行:宽,列:高if cv2.waitKey(1) == 27:break# 显示图片image_show = cv2.cvtColor(mirrow, cv2.COLOR_BGR2RGB)  # opencv读的通道是BGR,要转成RGBself.showImage = QtGui.QImage(image_show.data, height, width, QImage.Format_RGB888)self.label_video.setPixmap(QPixmap.fromImage(self.showImage))  # 往显示视频的Label里显示QImage# 是否关闭摄像头if self.is_close:break# 释放摄像头 release cameracap.release()self.label_video.clear()  # 清除label组件上的图片def close_camera(self):# 关闭摄像头self.is_close = Trueif __name__ == '__main__':QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)  # 自适应分辨率app = QtWidgets.QApplication(sys.argv)ui = OpenCamera()ui.show()sys.exit(app.exec_())

6、效果图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/106116.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络通信深入解析:探索TCP/IP模型

http协议访问web 你知道在我们的网页浏览器的地址当中输入url&#xff0c;未必是如何呈现的吗&#xff1f; web浏览器根据地址栏中指定的url&#xff0c;从web服务器获取文件资源&#xff08;resource&#xff09;等信息&#xff0c;从而显示出web页面。web使用HTTP&#xff08…

SAM + YOLOv8 图像分割及对象检测

SAM(Segment Anything Model&#xff09;是由 Meta 的研究人员团队创建和训练的深度学习模型。该创新成果发表在 2023 年 4 月 5 日发表的一篇研究论文中&#xff0c;它立即引起了公众的广泛兴趣——相关的 Twitter 帖子迄今为止已累积超过 350 万次浏览&#xff1a; 计算机视…

云数据库知识学习——云数据库产品、云数据库系统架构

一、云数据库产品 1.1、云数据库厂商概述 云数据库供应商主要分为三类。 ① 传统的数据库厂商&#xff0c;如 Teradata、Oracle、IBM DB2 和 Microsoft SQL Server 等。 ② 涉足数据库市场的云供应商&#xff0c;如 Amazon、Google、Yahoo!、阿里、百度、腾讯…

数据结构与算法基础-学习-33-归并排序

目录 一、基本思想 二、算法思路 1、合并两个有序序列 2、分治法 三、算法源码 1、MergeSortTwoSortData 2、TwoWayMergeSortRecurtionSentryQueue 四、算法效率分析 五、Linux环境编译测试 六、小感慨 排序的其他相关知识点和源码分享可以参考之前的博客&#xff1a…

【数据结构面试题】栈与队列的相互实现

目录 1.队列实现栈 1.1创建栈 1.2判断是否为空 1.3入栈 1.4出栈 1.5获取栈顶元素 1.6完整代码 2. 用栈实现队列 2.1创建队列 2.2判断是否为空 2.3入队列 2.4出队列 2.5获取队头元素 2.6完整代码 1.队列实现栈 用队列实现栈https://leetcode.cn/problems/impleme…

利用transform和border 创造简易图标,以适应uniapp中多字体大小情况下的符号问题

heml: <text class"icon-check"></text> css: .icon-check {border: 2px solid black;border-left: 0;border-top: 0;height: 12px;width: 6px;transform-origin: center;transform: rotate(45deg);} 实际上就是声明一个带边框的div 将其中相邻的两边去…

多维时序 | MATLAB实现GWO-GRU灰狼算法优化门控循环单元的多变量时间序列预测

多维时序 | MATLAB实现GWO-GRU灰狼算法优化门控循环单元的多变量时间序列预测 目录 多维时序 | MATLAB实现GWO-GRU灰狼算法优化门控循环单元的多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 MATLAB实现基于GWO-GRU灰狼算法优化门控循环单元的多变量时…

Python学习之六 循环结构

在很多情况下&#xff0c;我们往往需要循环输入多次&#xff0c;比如&#xff0c;密码最多只能输错3次等。这时候&#xff0c;我们需要使用循环结构。本小节&#xff0c;将学习循环。 一、while循环 while循环的一般形式如下&#xff1a; while 判断条件:循环语句块 当判断…

windows 下载安装 mysql

windows 下载安装 mysql 官网地址&#xff1a;https://dev.mysql.com/ 下载地址&#xff1a;https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-community-8.0.34.0.msi 点击 Downloads 点击 MySQL Community (GPL) Downloads 点击 MySQL Installer for Window…

分布式AKF拆分原则

目录 1 前言2 什么是AKF3 如何基于 AKF X 轴扩展系统&#xff1f;4 如何基于 AKF Y 轴扩展系统&#xff1f;5 如何基于 AKF Z 轴扩展系统&#xff1f;6 小结 1 前言 当我们需要分布式系统提供更强的性能时&#xff0c;该怎样扩展系统呢&#xff1f;什么时候该加机器&#xff1…

React中父子组件参数传递讲解

文章目录 结合案例&#xff1a;github搜索案例1.父容器代码2.搜索Search子模块代码3.展示Lisi子模块代码 父子参数传递分析1.子(Search)传父(App)2.父(App)传子(List) 结合案例&#xff1a;github搜索案例 案例结果展示如下图 1.父容器代码 import React, { Component } fr…

YashanDB:潜心实干,数据库核心技术突破没有捷径可走

都说数据库是三大基础软件中的一块硬骨头&#xff0c;技术门槛高、研发周期长、工程要求高&#xff0c;市场长期被几大巨头所把持。 因此&#xff0c;实现突破一直是中国数据库产业的夙愿。自上个世纪80年代起&#xff0c;中国数据库产业走过艰辛坎坷的四十余载&#xff0c;终…