网络编程
位置:首页>> 网络编程>> Python编程>> pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法

pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法

作者:日沉云起  发布时间:2022-02-26 16:18:37 

标签:pyqt5,图片,自适应,QLabel

代码:


import sys
from PyQt5.QtWidgets import (QWidget, QHBoxLayout, QLabel, QApplication)
from PyQt5.QtGui import QPixmap

class Example (QWidget):
def __init__(self):
super ().__init__ ()
self.initUI ()

def initUI(self):
hbox = QHBoxLayout (self)
lbl = QLabel (self)
pixmap = QPixmap ("E:\programming\python\MineSweeper\mine.jpg") # 按指定路径找到图片,注意路径必须用双引号包围,不能用单引号
lbl.setPixmap (pixmap) # 在label上显示图片
lbl.setScaledContents (True) # 让图片自适应label大小
hbox.addWidget (lbl)
self.setLayout (hbox)
self.move (300, 200)
self.setWindowTitle ('Red Rock')
self.show ()

if __name__ == '__main__':
app = QApplication (sys.argv)
ex = Example ()
sys.exit (app.exec_ ())

效果显示:

pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法

让图片自适应QLabel的主要代码:


lbl.setScaledContents (True) # 让图片自适应label大小

为了方便对比效果,不妨按一下最大化按钮,效果如下:

pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法

可见确实实现了图片自适应label大小的功能。那么如何移除label上得图片呢?很简单,加入一行代码就可以解决:


lbl.setPixmap(QPixmap(""))#移除label上的图片

完整代码:


import sys
from PyQt5.QtWidgets import (QWidget, QHBoxLayout, QLabel, QApplication)
from PyQt5.QtGui import QPixmap

class Example (QWidget):
def __init__(self):
super ().__init__ ()
self.initUI ()

def initUI(self):
hbox = QHBoxLayout (self)
lbl = QLabel (self)
pixmap = QPixmap ("E:\programming\python\MineSweeper\mine.jpg") # 按指定路径找到图片
lbl.setPixmap (pixmap) # 在label上显示图片
lbl.setScaledContents (True) # 让图片自适应label大小
lbl.setPixmap(QPixmap(""))#移除label上的图片
hbox.addWidget (lbl)

self.setLayout (hbox)
self.move (300, 200)
self.setWindowTitle ('Red Rock')
self.show ()

if __name__ == '__main__':
app = QApplication (sys.argv)
ex = Example ()
sys.exit (app.exec_ ())

效果如下:

pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法

来源:https://blog.csdn.net/richenyunqi/article/details/80546952

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com