PySide6中使用QLabel显示图片

QLabel 部件不仅可以用来显示文字,还可用来显示图片;本文将使用PySide6中的QLabel部件和QPixmap部件来显示一张图片;

使用QLabel显示图片

示例代码如下:

import sys
from PySide6 import QtWidgets, QtGui

class MyWidget(QtWidgets.QWidget):
    def __init__(self):
        super().__init__()

        self.pix = QtGui.QPixmap('test.png')
        size = self.pix.size()

        self.label1 = QtWidgets.QLabel(self)
        self.label1.setGeometry(0,0,size.width(),size.height())
        #self.label1.setScaledContents(True) #缩放
        self.label1.setPixmap(self.pix)
        #self.label1.setPixmap('test.png') #可直接使用路径来指定图片

if __name__ == "__main__":
    app = QtWidgets.QApplication([])
    widget = MyWidget()
    widget.show()
    sys.exit(app.exec())

程序运行效果

QLabel显示图片

程序使用QPixmap来载入图片,使用QLabel部件的.setPixmap方法来设置像素图,调用此方法将清空任何以前的内容;

.setPixmap方法可以直接使用文件路径来显示图片;

QLabel大小和缩放

可使用QLabel的setGeometry方法来设置QLabel的位置和大小:

        self.label1.setGeometry(0,0,size.width(),size.height())

前两个参数为QLabel的水平坐标和垂直坐标,后两个参数为QLabel的宽度和高度;

当图片的像素大于或小于QLabel的宽度*高度时,可使用.setScaledContents(True)方法将图片设置为缩放;

        self.label1.setScaledContents(True) #设置缩放

设置缩放运行效果

QLabel设置缩放

完整代码

import sys
from PySide6 import QtWidgets, QtGui

class MyWidget(QtWidgets.QWidget):
    def __init__(self):
        super().__init__()

        self.pix = QtGui.QPixmap('test.png')
        size = self.pix.size()

        self.label1 = QtWidgets.QLabel(self)
        self.label1.setGeometry(0,0,size.width(),size.height())
        self.label1.setPixmap(self.pix)
        #self.label1.setPixmap('test.png') #可直接使用路径来指定图片

        self.label2 = QtWidgets.QLabel(self)
        self.label2.setGeometry(0,180,size.width()/2,size.height()/2)
        self.label2.setScaledContents(True) #自适应
        self.label2.setPixmap(self.pix)

        self.label3 = QtWidgets.QLabel(self)
        self.label3.setGeometry(0,280,size.width()*2,size.height()*2)
        self.label3.setScaledContents(True) #自适应
        self.label3.setPixmap(self.pix)

if __name__ == "__main__":
    app = QtWidgets.QApplication([])
    widget = MyWidget()
    widget.show()
    sys.exit(app.exec())

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/use-qlabel-to-display-pictures-in-pyside6.html

分类: 计算机技术
推荐阅读:
Python实现快速排序(quick sort) 快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
Python map()函数 map() 是 Python 中的一个内置函数,它接受一个函数和一个或多个可迭代对象作为输入,返回一个新的可迭代对象,其中每个元素都是将输入函数应用于相应元素的结果。
warning: implicit declaration of function 'getpid' 解决方法 在C程序中使用getpid()获取进程识别码时,可能会出现 warning: implicit declaration of function 'getpid'; did you mean 'getenv'? [-Wimplicit-function-declaration] 这样的警告信息;
如何查看CPU序列号 请注意,某些CPU可能没有序列号,或由于制造商实施的安全功能而无法获取序列号。此外,序列号可能不是针对您特定的CPU型号而独有的,可能在多个CPU之间共享。
C语言获取操作系统类型 在C语言中,获取操作系统类型的方法通常依赖于操作系统和编译器。以下是一种常见的方法,可以使用预定义的宏来获取操作系统类型:
Updating crates.io index 出现错误解决方法 在向Rust项目添加依赖后尝试运行或编译,cargo管理工具会尝试更新crates.io index,当出现git配置错误可能会出现类似以下的错误: