首页 > 编程语言 >Python--PyQT5图像

Python--PyQT5图像

时间:2024-06-04 15:48:23浏览次数:29  
标签:QtGui Python image QtWidgets PyQT5 label -- main QtCore

from PyQt5 import QtCore, QtGui
import sys
import cv2


if __name__ == '__main__':

    app = QtWidgets.QApplication(sys.argv)
    main_win = QtWidgets.QMainWindow()
    main_win.setWindowTitle("QLabel图像显示演示")
    image_label = QtWidgets.QLabel()
    txt_label = QtWidgets.QLabel()

    # 方法一:使用QtGui直接显示
    # pixmap = QtGui.QPixmap("./image/img1.png")
    # pix = pixmap.scaled(QtCore.QSize(640, 640), QtCore.Qt.KeepAspectRatio)  # 自动保持比例放缩方式

    # 方法二:使用cv2显示
    src = cv2.imread("./image/img1.png")   # BGR
    image = cv2.cvtColor(src, cv2.COLOR_BGR2RGB)   # 将BGR转为RGB
    h, w, c = image.shape
    img = QtGui.QImage(image.data, w, h, 3*w, QtGui.QImage.Format_RGB888)
    pixmap = QtGui.QPixmap(img)
    pix = pixmap.scaled(QtCore.QSize(640, 640), QtCore.Qt.KeepAspectRatio)  # 自动保持比例放缩方式
    image_label.setPixmap(pix)   # 设置图像显示
    image_label.setAlignment(QtCore.Qt.AlignCenter)   # label上的内容居中显示
    image_label.setStyleSheet("background-color:blue;color:green")    # 背景颜色设置
    # main_win.setCentralWidget(image_label)

    txt_label.setText("Hello, PyQT5")
    txt_label.setAlignment(QtCore.Qt.AlignCenter)   # label上居中显示
    txt_label.setStyleSheet("background-color:pink;color:green")    # 背景颜色设置
    font = QtGui.QFont()
    font.setBold(True)
    font.setPointSizeF(32)
    txt_label.setFont(font)

    panel = QtWidgets.QWidget()
    vboxlayout = QtWidgets.QVBoxLayout()
    vboxlayout.addWidget(txt_label)
    vboxlayout.addWidget(image_label)
    panel.setLayout(vboxlayout)
    main_win.setCentralWidget(panel)
    main_win.setMinimumSize(1080, 720)
    main_win.show()
    app.exec_()

标签:QtGui,Python,image,QtWidgets,PyQT5,label,--,main,QtCore
From: https://www.cnblogs.com/jackchen28/p/18230926

相关文章

  • zabbix监控域名到期时间
    #获取证书过期时间脚本cat/etc/zabbix/scripts/base/check-http-expire.sh#!/bin/bashhost=$1#end_date=`whois-H $host|grep"RegistryExpiryDate"|awk'{print$NF}'`end_date=`whois-H $host|egrep"RegistryExpiryDate|ExpirationTime&qu......
  • 在 Observability 中直接创建新跨度时,通常会在什么情况下创建?
    我正在使用Springboot+OpenTelemetry+Micrometer实现可观察性。我仍然不确定何时创建自己的跨度是个好主意。你们通常在什么时候创建自己的跨度?在使用SpringBoot+OpenTelemetry+Micrometer实现可观测性时,确定何时创建自定义跨度是一个常见的问题。以下是一些......
  • 字符串的应用---合并
    准备:publicclassEmployee{publicintId{get;set;}publicstringName{get;set;}publicdoubleSalary{get;set;}}publicclassSeat{publicintId{get;set;}publ......
  • Alertmanager添加Basic Auth
    从dockerhub中下载的alertmanager镜像默认不带Basicauth,安全检测会存在未授权访问漏洞,重写dockerfile添加启动参数解决此漏洞。1、重写DockerfileFROMprom/alertmanager:v0.27.0USERnobodyCOPYpassword.yml/etc/alertmanager/EXPOSE9093WORKDIR/alertmanagerVOLUM......
  • Godot:在页面间导航时出错;
    我的代码有问题。所有按钮都可以点击。但是当进入排行榜时。然后按下退出按钮。所有按钮都无法使用,并且什么也做不了。以下是错误信息。_parse_ext_resource:res://scenes/main_menu.tscn:16-解析错误:[ext_resource]在......
  • Python---PyQT5水平垂直布局
    fromPyQt5importQtWidgetsfromPyQt5importQtCore,QtGuiimportsysimportcv2if__name__=='__main__':app=QtWidgets.QApplication(sys.argv)main_win=QtWidgets.QMainWindow()main_win.setWindowTitle("QLabel图像显示演示"......
  • IDEA maven 项目 如何获取项目离线运行所需的全部依赖( .m2格式)
    背景:maven项目要将整个项目的依赖移植到某无法联网服务器进行测试,需要项目离线运行所需的全部依赖步骤:1. 首先需要有项目源码,解压后,使用IDEA Open Project 2. 在Settings中,配置settings.xml文件的完整路径,以及依赖文件夹的完整路径 setting.xml如果没有,可以复用下面的......
  • Python---PyQT5之QPushButton
    fromPyQt5importQtWidgetsfromPyQt5importQtCore,QtGuiimportsysimportcv2classButtonPanel(QtWidgets.QWidget):def__init__(self,*args,**kwargs):super().__init__(*args,**kwargs)select_btn=QtWidgets.QPushButton("......
  • 需要帮助对 shadcn/ui 中的选择进行单元测试
    我有一个React组件,我在其中使用了shadcn/ui,具体而言,在本例中使用了Select:<divclassName='flex-1gt<divclassName='flex-1'>;<FormFieldcontrol={form.control}name='clientType......
  • PyQT5之label
    fromPyQt5importQtWidgetsfromPyQt5importQtCore,QtGuiimportsysif__name__=='__main__':app=QtWidgets.QApplication(sys.argv)main_win=QtWidgets.QMainWindow()main_win.setWindowTitle("我的第一个PyQT5应用")labe......