PyQt5 加载图片和文本文件的实例


Posted in Python onJune 14, 2019

首先我们来看一组效果

PyQt5 加载图片和文本文件的实例

选择图片文本设置完以后

PyQt5 加载图片和文本文件的实例

选择过程中

PyQt5 加载图片和文本文件的实例

核心代码解释

# 这个函数是用来打开电脑的资源管理器选择照片用的
  def loadFile(self):
    print("load--file")
    # QFileDialog就是系统对话框的那个类第一个参数是上下文,第二个参数是弹框的名字,第三个参数是开始打开的路径,第四个参数是需要的格式
    fname, _ = QFileDialog.getOpenFileName(self, '选择图片', 'c:\\', 'Image files(*.jpg *.gif *.png)')
    self.label.setPixmap(QPixmap(fname))


# 这个函数是打开文本选择器,加载文本的函数
   def load_text(self):
    print("load--text")
    #初始化这个实例,设置一些基本属性
    dlg = QFileDialog()
    dlg.setFileMode(QFileDialog.AnyFile)
    dlg.setFilter(QDir.Files)
    # 当选择器关闭的时候
    if dlg.exec_():
      # 拿到所选择的的文本
      filenames = dlg.selectedFiles()
      #读取文本内容设置到TextEdit当中来
      f = open(filenames[0], 'r')
      with f:
        data = f.read()
        self.content.setText(data)

完整代码

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class filedialogdemo(QWidget):

  def __init__(self, parent=None):
    super(filedialogdemo, self).__init__(parent)
    layout = QVBoxLayout()

    self.btn = QPushButton()
    self.btn.clicked.connect(self.loadFile)
    self.btn.setText("从文件中获取照片")
    layout.addWidget(self.btn)

    self.label = QLabel()
    layout.addWidget(self.label)

    self.btn_2 = QPushButton()
    self.btn_2.clicked.connect(self.load_text)
    self.btn_2.setText("加载电脑文本文件")
    layout.addWidget(self.btn_2)

    self.content = QTextEdit()
    layout.addWidget(self.content)
    self.setWindowTitle("测试")

    self.setLayout(layout)

  def loadFile(self):
    print("load--file")
    fname, _ = QFileDialog.getOpenFileName(self, '选择图片', 'c:\\', 'Image files(*.jpg *.gif *.png)')
    self.label.setPixmap(QPixmap(fname))

  def load_text(self):
    print("load--text")
    dlg = QFileDialog()
    dlg.setFileMode(QFileDialog.AnyFile)
    dlg.setFilter(QDir.Files)
    if dlg.exec_():
      filenames = dlg.selectedFiles()
      f = open(filenames[0], 'r')
      with f:
        data = f.read()
        self.content.setText(data)

if __name__ == '__main__':
  app = QApplication(sys.argv)
  fileload = filedialogdemo()
  fileload.show()
  sys.exit(app.exec_())

以上这篇PyQt5 加载图片和文本文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 获取本机ip地址的两个方法
Feb 25 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
Jan 06 Python
python+matplotlib绘制3D条形图实例代码
Jan 17 Python
Python实现模拟登录网易邮箱的方法示例
Jul 05 Python
Python字典循环添加一键多值的用法实例
Jan 20 Python
Python如何调用JS文件中的函数
Aug 16 Python
Python 可变类型和不可变类型及引用过程解析
Sep 27 Python
pygame实现俄罗斯方块游戏(基础篇3)
Oct 29 Python
python如何爬取动态网站
Sep 09 Python
python pip如何手动安装二进制包
Sep 30 Python
python中PyQuery库用法分享
Jan 15 Python
快速一键生成Python爬虫请求头
Mar 04 Python
pyqt5 使用label控件实时显示时间的实例
Jun 14 #Python
ubuntu 18.04搭建python环境(pycharm+anaconda)
Jun 14 #Python
pyqt5 comboBox获得下标、文本和事件选中函数的方法
Jun 14 #Python
PyQt4实时显示文本内容GUI的示例
Jun 14 #Python
详解Python 定时框架 Apscheduler原理及安装过程
Jun 14 #Python
在python tkinter中Canvas实现进度条显示的方法
Jun 14 #Python
浅谈PySpark SQL 相关知识介绍
Jun 14 #Python
You might like
各种战术和打法的原创者
2020/03/04 星际争霸
php cookis创建实现代码
2009/03/16 PHP
PHP中soap的用法实例
2014/10/24 PHP
php 流程控制switch的简单实例
2016/06/07 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
JavaScript CSS修改学习第五章 给“上传”添加样式
2010/02/19 Javascript
JavaScript中函数声明优先于变量声明的实例分析
2012/03/01 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
NodeJS学习笔记之Connect中间件应用实例
2015/01/27 NodeJs
JavaScript中数据类型转换总结
2016/12/25 Javascript
JavaScript实现数组降维详解
2017/01/05 Javascript
详解webpack3如何正确引用并使用jQuery库
2017/08/26 jQuery
js的函数的按值传递参数(实例讲解)
2017/11/16 Javascript
Vue使用axios出现options请求方法
2019/05/30 Javascript
全面解析js中的原型,原型对象,原型链
2021/01/25 Javascript
[42:32]Secret vs Optic 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
跟老齐学Python之做一个小游戏
2014/09/28 Python
讲解Python中运算符使用时的优先级
2015/05/14 Python
Windows下安装python2和python3多版本教程
2017/03/30 Python
学习Python selenium自动化网页抓取器
2018/01/20 Python
Python yield与实现方法代码分析
2018/02/06 Python
详解django+django-celery+celery的整合实战
2019/03/19 Python
Django:使用filter的pk进行多值查询操作
2020/07/15 Python
利用Python实现最小二乘法与梯度下降算法
2021/02/21 Python
CSS3 实现时间轴动画
2020/11/25 HTML / CSS
Jones Bootmaker官网:优质靴子和鞋子在线
2020/11/30 全球购物
Linux如何修改文件和文件夹的权限
2013/09/05 面试题
司机检讨书
2014/02/13 职场文书
廉洁自律承诺书
2014/03/27 职场文书
公司委托书格式范本
2014/09/16 职场文书
国际政治学专业推荐信
2014/09/26 职场文书
2016年春季运动会广播稿
2015/08/19 职场文书
2016简单的租房合同范本
2016/03/18 职场文书
2016大学生国家助学贷款承诺书
2016/03/25 职场文书
交互式可视化js库gojs使用介绍及技巧
2022/02/18 Javascript
Python TypeError: ‘float‘ object is not subscriptable错误解决
2022/12/24 Python