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启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
Apr 09 Python
Python语言编写电脑时间自动同步小工具
Mar 08 Python
Python学习之Django的管理界面代码示例
Feb 10 Python
Python反转序列的方法实例分析
Mar 21 Python
值得收藏,Python 开发中的高级技巧
Nov 23 Python
python实现动态创建类的方法分析
Jun 25 Python
python中的RSA加密与解密实例解析
Nov 18 Python
使用python绘制二维图形示例
Nov 22 Python
Python虚拟环境库virtualenvwrapper安装及使用
Jun 17 Python
python能做哪些生活有趣的事情
Sep 09 Python
MoviePy简介及Python视频剪辑自动化
Dec 18 Python
Pandas搭配lambda组合使用详解
Jan 22 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
第1次亲密接触PHP5(2)
2006/10/09 PHP
ip签名探针
2006/10/09 PHP
一个用php3编写的简单计数器
2006/10/09 PHP
PHP为表单获取的URL 地址预设 http 字符串函数代码
2010/05/26 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
2013/06/28 PHP
destoon整合ucenter后注册页面不跳转的解决方法
2014/06/21 PHP
php分页原理 分页代码 分页类制作教程
2016/09/23 PHP
JS获取当前日期和时间的简单实例
2013/11/19 Javascript
jquery如何判断表格同一列不同行input数据是否重复
2014/05/14 Javascript
将数字转换成大写的人民币表达式的js函数
2014/09/21 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
网页收藏夹显示ICO图标(代码少)
2015/08/04 Javascript
JavaScript常用基础知识强化学习
2015/12/09 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
react-router中的属性详解
2017/06/01 Javascript
微信小程序日历组件使用方法详解
2018/12/29 Javascript
vue模仿网易云音乐的单页面应用
2019/04/24 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
2019/09/15 Javascript
vue在响应头response中获取自定义headers操作
2020/07/24 Javascript
[03:33]TI9战队采访 - Infamous
2019/08/20 DOTA
[46:28]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
[09:13]DOTA2-DPC中国联赛 正赛 Ehome vs Magma 选手采访 1月19日
2021/03/11 DOTA
在Docker上开始部署Python应用的教程
2015/04/17 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
2016/04/24 Python
python 实现自动远程登陆scp文件实例代码
2017/03/13 Python
利用Pandas读取文件路径或文件名称包含中文的csv文件方法
2018/07/04 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
详解pandas数据合并与重塑(pd.concat篇)
2019/07/09 Python
对Django项目中的ORM映射与模糊查询的使用详解
2019/07/18 Python
Python图像读写方法对比
2020/11/16 Python
python温度转换华氏温度实现代码
2020/12/06 Python
python+selenium实现12306模拟登录的步骤
2021/01/21 Python
青年教师师德演讲稿
2014/08/26 职场文书
终止合同协议书范本
2016/03/22 职场文书