Python高级进阶#016 pyqt5载入图片QPixmap应用

简介: Python高级进阶#016 pyqt5载入图片QPixmap应用

知识回顾:



1.掌握进度条qprogressbar使用

2.学会使用时钟控件qbasictimer

3.学会重写事件timerEvent


一、案例:图片的载入与移除



image.png

效果图

需求:

1.加入需要能够载入图片

2.增加移除图片按钮和添加图片按钮

3.当点击相应按钮后会有相应的功能


二、最终图片的显示载体QLabel



功能:

1.显示文字

2.显示图片,载入Qpixmap

使用方法:

lbl.setPixmap(Qpixmap图片实例化对象)


默认情况下,label显示区域,是根据图片的大小进行显示的。

如果设置label大小的话,只会显示图片的部分裁剪区域。


提问:如何让图片自适应qlabel标签大小的区域呢?

lbl.setScaledContents(True)  设置图片尺寸自适应


三、Qpixmap类



1.所在类库QtGUI

2.导入

from PyQt5.QtGui import Qpixmap


实例化图片对象:

Qpixmap(图片的路径) 返回的是实例化图片对象


注意:想要显示图片,必须要有图片的显示容器。


四、总结强调



1.掌握Qpixmap载入图片对象与移除。

2.掌握通过Qlabel来显示图片与自适应大小。

3.掌握程序书写思想。


本节知识源代码:

import sys
from PyQt5.QtWidgets import QApplication,QWidget,QLabel,QPushButton
from PyQt5.QtGui import QPixmap
class MyClass(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        self.setWindowTitle("刘金玉编程")
        self.setGeometry(300,100,400,300)
        self.lbl=QLabel("图片",self)
        self.pm=QPixmap("./img/pic1.jpg")
        self.lbl.setPixmap(self.pm)
        self.lbl.resize(300,200)
        self.lbl.setScaledContents(True)
        #移除按钮
        btn1=QPushButton("移除图片",self)
        btn1.clicked.connect(self.myRemovePic)
        btn1.move(0,220)
        #增加按钮
        btn2=QPushButton("增加图片",self)
        btn2.clicked.connect(self.myAddPic)
        btn2.move(0,250)
        self.show()
    def myRemovePic(self):
        self.lbl.setPixmap(QPixmap(""))
    def myAddPic(self):
        self.lbl.setPixmap(self.pm)
if __name__=="__main__":
    app=QApplication(sys.argv)
    mc=MyClass()
    app.exec_()
相关文章
|
1月前
|
监控 数据可视化 数据挖掘
Python Rich库使用指南:打造更美观的命令行应用
Rich库是Python的终端美化利器,支持彩色文本、智能表格、动态进度条和语法高亮,大幅提升命令行应用的可视化效果与用户体验。
118 0
|
2月前
|
数据采集 监控 Java
Python 函数式编程的执行效率:实际应用中的权衡
Python 函数式编程的执行效率:实际应用中的权衡
225 102
|
1月前
|
机器学习/深度学习 编解码 Python
Python图片上采样工具 - RealESRGANer
Real-ESRGAN基于深度学习实现图像超分辨率放大,有效改善传统PIL缩放的模糊问题。支持多种模型版本,推荐使用魔搭社区提供的预训练模型,适用于将小图高质量放大至大图,放大倍率越低效果越佳。
175 3
|
1月前
|
机器学习/深度学习 文字识别 Java
Python实现PDF图片OCR识别:从原理到实战的全流程解析
本文详解2025年Python实现扫描PDF文本提取的四大OCR方案(Tesseract、EasyOCR、PaddleOCR、OCRmyPDF),涵盖环境配置、图像预处理、核心识别与性能优化,结合财务票据、古籍数字化等实战场景,助力高效构建自动化文档处理系统。
372 0
|
1月前
|
机器学习/深度学习 算法 安全
【强化学习应用(八)】基于Q-learning的无人机物流路径规划研究(Python代码实现)
【强化学习应用(八)】基于Q-learning的无人机物流路径规划研究(Python代码实现)
113 6
|
1月前
|
设计模式 缓存 运维
Python装饰器实战场景解析:从原理到应用的10个经典案例
Python装饰器是函数式编程的精华,通过10个实战场景,从日志记录、权限验证到插件系统,全面解析其应用。掌握装饰器,让代码更优雅、灵活,提升开发效率。
131 0
|
2月前
|
数据采集 存储 数据可视化
Python网络爬虫在环境保护中的应用:污染源监测数据抓取与分析
在环保领域,数据是决策基础,但分散在多个平台,获取困难。Python网络爬虫技术灵活高效,可自动化抓取空气质量、水质、污染源等数据,实现多平台整合、实时更新、结构化存储与异常预警。本文详解爬虫实战应用,涵盖技术选型、代码实现、反爬策略与数据分析,助力环保数据高效利用。
162 0
|
2月前
|
存储 程序员 数据处理
Python列表基础操作全解析:从创建到灵活应用
本文深入浅出地讲解了Python列表的各类操作,从创建、增删改查到遍历与性能优化,内容详实且贴近实战,适合初学者快速掌握这一核心数据结构。
246 0
|
2月前
|
中间件 机器人 API
Python多态实战:从基础到高阶的“魔法”应用指南
Python多态机制通过“鸭子类型”实现灵活接口,使不同对象统一调用同一方法,自动执行各自行为。它简化代码逻辑、提升扩展性,适用于数据处理、策略切换、接口适配等场景。掌握多态思维,能有效减少冗余判断,使程序更优雅、易维护。
149 0
|
2月前
|
存储 监控 安全
Python剪贴板监控实战:clipboard-monitor库的深度解析与扩展应用
本文介绍了基于Python的剪贴板监控技术,结合clipboard-monitor库实现高效、安全的数据追踪。内容涵盖技术选型、核心功能开发、性能优化及实战应用,适用于安全审计、自动化办公等场景,助力提升数据管理效率与安全性。
130 0

推荐镜像

更多