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 Qt库PySide和PyQt哪个好? Qt是一个跨平台的GUI程序开发框架;使用Qt可以轻松的开发出GUI程序;而想在Python中创建Qt应用,则需一套用于调用Qt API的库;这里主要介绍两个比较成熟的python Qt库,PyQt和PySide;
Python iter()函数 在Python中,iter()函数用于获取一个可迭代对象的迭代器。
如何查看CPU的出厂日期 通常情况下,CPU的出厂日期是写在CPU的标签或者包装盒上的。如果您已经安装了CPU,则可以通过操作系统或者第三方软件来查看CPU的出厂日期。以下是一些方法:
Rust debug_assert_eq宏的用法和示例 在Rust语言中,debug_assert_eq宏专门用于进行调试时的值相等性检查。它类似于assert_eq宏,但有一个重要的区别:debug_assert_eq只能在Rust的debug模式下进行检查,这意味着在发布应用程序时,所有的debug_assert_eq检查都会被编译器完全移除,不会影响最终的执行代码。
Python join()方法 在使用Python处理字符串时,您可能需要将较小的块连接在一起形成一个字符串;Python中的字符串方法join()可以帮助您完成这个任务;
MySQL函数大全 本教程几乎收罗了MySQL的所有内置函数;其中包括数学函数、日期和时间函数、字符串函数、转换函数、加密函数、压缩函数、XML函数、JSON函数等等。