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

yipeiwu_com6年前Python基础

代码:

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_ ())

效果显示:

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

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

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

可见确实实现了图片自适应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大小上以及移除已显示的图片方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python Process多进程实现过程

Python Process多进程实现过程

进程的概念 程序是没有运行的代码,静态的; 进程是运行起来的程序,进程是一个程序运行起来之后和资源的总称; 程序只有一个,但同一份程序可以有多个进程;例如,电脑上多开QQ; 程序和进程...

Python正则表达式和re库知识点总结

正则表达式是定义搜索模式的字符序列。通常这种模式被字符串搜索算法用于字符串上的“查找”或“查找和替换”操作,或者用于输入验证。 1. 正则表达式的语法 . 表示任何单个字符 [] 字符集...

Python中defaultdict与lambda表达式用法实例小结

本文实例讲述了Python中defaultdict与lambda表达式用法。分享给大家供大家参考,具体如下: 从教程中看到defaultdict是一个类,在一台装有Python2.7.6...

pandas中Timestamp类用法详解

由于网上关于Timestamp类的资料比较少,而且官网上面介绍的很模糊,本文只是对如何创建Timestamp类对象进行简要介绍,详情请读者自行查阅文档。 以下有两种方式可以创建一个Tim...

Python函数的周期性执行实现方法

本文实例讲述了Python函数的周期性执行实现方法。分享给大家供大家参考,具体如下: 需要用到python的sched模块: #coding=utf-8 import time,sc...