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 相关文章推荐
在Ubuntu系统下安装使用Python的GUI工具wxPython
Feb 18 Python
使用Python读写及压缩和解压缩文件的示例
Jul 08 Python
Python生成指定数量的优惠码实操内容
Jun 18 Python
对django的User模型和四种扩展/重写方法小结
Aug 17 Python
Python使用matplotlib实现交换式图形显示功能示例
Sep 06 Python
Python爬虫 urllib2的使用方法详解
Sep 23 Python
Python动态强类型解释型语言原理解析
Mar 25 Python
Python 炫技操作之合并字典的七种方法
Apr 10 Python
Pytorch转onnx、torchscript方式
May 25 Python
Python hashlib和hmac模块使用方法解析
Dec 08 Python
Python多线程 Queue 模块常见用法
Jul 04 Python
OpenCV绘制圆端矩形的示例代码
Aug 30 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
php 远程图片保存到本地的函数类
2008/12/08 PHP
jQuery EasyUI API 中文文档 - DateBox日期框
2011/10/15 PHP
解析如何用php screw加密php源代码
2013/06/20 PHP
PHP中cookie和session的区别实例分析
2014/08/28 PHP
PHP异常处理Exception类
2015/12/11 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
2016/10/11 PHP
JavaScript窗口功能指南之在窗口中书写内容
2006/07/21 Javascript
番茄的表单验证类代码修改版
2008/07/18 Javascript
js中有关IE版本检测
2012/01/04 Javascript
Ajax提交与传统表单提交的区别说明
2014/02/07 Javascript
jquery如何把数组变为字符串传到服务端并处理
2014/04/30 Javascript
javascript组合使用构造函数模式和原型模式实例
2015/06/04 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
2015/08/27 Javascript
jQuery如何使用自动触发事件trigger
2015/11/29 Javascript
快速掌握WordPress中加载JavaScript脚本的方法
2015/12/17 Javascript
jQuery遮罩层效果实例分析
2016/01/14 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
2016/11/22 Javascript
Javascript下拉刷新的简单实现
2017/02/14 Javascript
js 输入框 正则表达式(菜鸟必看教程)
2017/02/19 Javascript
前端自动化开发之Node.js的环境搭建教程
2017/04/01 Javascript
基于JavaScript实现的希尔排序算法分析
2017/04/14 Javascript
详解webpack2+React 实例demo
2017/09/11 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
Vue-cli3项目配置Vue.config.js实战记录
2018/07/29 Javascript
js代码实现轮播图
2020/05/04 Javascript
python正则表达式去掉数字中的逗号(python正则匹配逗号)
2013/12/25 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
CSS3 box-sizing属性详解
2016/11/15 HTML / CSS
Html5页面点击遮罩层背景关闭遮罩层
2020/11/30 HTML / CSS
英国邮购活的植物主要供应商:Gardening Direct
2019/01/28 全球购物
说一下Linux下有关用户和组管理的命令
2016/01/04 面试题
土木工程应届生求职信
2013/10/31 职场文书
高中生家长会演讲稿
2014/01/14 职场文书
2014年企业党支部工作总结
2014/12/04 职场文书
汽车修理厂管理制度
2015/08/05 职场文书