参考书籍《PyQt5 快速开发与实战》王硕 孙洋洋 著

介绍

QFileDialog是用来打开和保存文件的标准对话框。QFileDialog类继承自QDialog类。
QFileDialog在打开文件时使用了文件过滤器,用于显示指定扩展名的文件。也可以设置使用QFileDialog打开文件时的起始目录和指定扩展名的文件。

代码

QFileDialog的使用

# -*- coding: utf-8 -*-'''【简介】PyQt5中 QFileDialog 例子
'''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.getfile)layout.addWidget(self.btn)self.le = QLabel("")layout.addWidget(self.le)self.btn1 = QPushButton("加载文本文件")self.btn1.clicked.connect(self.getfiles)layout.addWidget(self.btn1)self.contents = QTextEdit()layout.addWidget(self.contents)self.setLayout(layout)self.setWindowTitle("File Dialog 例子")def getfile(self):'''getOpenFileName():返回用户所选择文件的名称,并打开该文件第一个参数用于指定父组件第二个参数指定对话框标题第三个参数指定目录第四个参数是文件扩展名过滤器'''fname, _  = QFileDialog.getOpenFileName(self, 'Open file', 'c:\\',"Image files (*.jpg *.gif)")self.le.setPixmap(QPixmap(fname))def getfiles(self):'''setFileMode():QFileDialog.AnyFile,任何文件QFileDialog.ExistingFile,已存在的文件QFileDialog.Directory,文件目录QFileDialog.ExistingFiles,已经存在的多个文件'''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.contents.setText(data) if __name__ == '__main__':app = QApplication(sys.argv)ex = filedialogdemo()ex.show()sys.exit(app.exec_())

效果展示



参考资源

1.《PyQt5快速开发与实战》王硕,孙洋洋
2.《PyQt5快速开发与实战》源代码下载链接

PyQt5学习--基本窗口控件--加载文件-QFileDialog相关推荐

  1. PyQt5学习--基本窗口控件--QMainWindow

    参考书籍<PyQt5 快速开发与实战>王硕 孙洋洋 著 QMainWindow主窗口为用户提供一个应用程序框架,它有自己的布局,可以在布局中添加控件.比如将工具栏.菜单栏和状态栏等添加到布 ...

  2. PyQt5学习--基本窗口控件--QLabel

    参考书籍<PyQt5 快速开发与实战>王硕 孙洋洋 著 介绍 QLabel对象作为一个占位符可以显示不可编辑的文本或图片,也可以放置一个GIF动画,还可以被用作提示标记为其他控件.纯文本. ...

  3. PyQt5学习--基本窗口控件--QButton类控件

    参考书籍<PyQt5 快速开发与实战>王硕 孙洋洋 著 介绍 PyQt5按钮的基类是QAbstractButton,为抽象类,不能实例化. 常见的按钮类有:QPushButton.QToo ...

  4. C# WinForm 添加Windows Media Player 控件调试出现未能加载文件或程序集Interop.WMPLib,该怎么解决...

    C# WinForm 添加Windows Media Player 控件调试出现未能加载文件或程序集Interop.WMPLib 如标题,在窗体中添加Windows Media Player 控件,当 ...

  5. 从MDK分散加载文件学习STM32启动流程

    一直在用ARM的Cortex-M系列做产品开发,也陆陆续续学习了ARM的启动流程.汇编启动文件,但是总感觉没有连贯的把全部知识串起来,不知道某些汇编语句为什么要这么写,没法按照自己的情况进行修改.今天 ...

  6. keil STM32中sct 分散加载文件学习

    sct 分散加载文件简介 MDK 生成一个以工程名命名的后缀为 *.sct 的分散加载文件 (Linker Control File,scatter loading),链接器根据该文件的配置分配各个节 ...

  7. .NET项目运行错误:未能加载文件或程序集“CefSharp.Core.Runtime.dll”或它的某一个依赖项。找不到指定的模块

    当你在运行包含CefSharp控件的应用程序时,可能会遇到类似以下错误消息: System.IO.FileNotFoundException: 未能加载文件或程序集"CefSharp.Cor ...

  8. C# winform未能加载文件或程序集它的某一个依赖项。系统找不到指定的文件记录

    问题描述: 在做winform项目的时候,我们自己写了一些自定义的控件,这些自定义的控件,引用了专门存放entity的项目.即控件所在的项目会引用entity项目生成的dll.然后有时候就会出现打开窗 ...

  9. html资源加载,如何加载文件资源 (HTML)

    如何加载文件资源 (HTML) 01/28/2016 本文内容 [ 本文适用于编写 Windows 运行时应用的 Windows 8.x 和 Windows Phone 8.x 开发人员.如果你要针对 ...

最新文章

  1. php display_errors
  2. 什么样的网页百度爱收录?
  3. html body div height: 100%;
  4. ifconfig 命令介绍
  5. 7-52 两个有序链表序列的交集 (20 分)(思路加详解尾插法)come Boby!
  6. idea卡顿的解决方法_lt;绝地求生/PUBG/解决卡顿方法(停机9小时)维护gt;9月16日(星期三) 08点30分amp;崩溃...
  7. ASP.NET页面之间传值的方式之Cookie(个人整理)
  8. Python:如何安装whl文件
  9. ros melodic控制真实机械臂之等周期输出插补点
  10. 使用Visual Studio Code + Node.js搭建TypeScript开发环境
  11. 计算机组成原理实验箱连接显示输出,计算机组成原理实验箱介绍.ppt
  12. 登录和访问EI(Engineering Village)数据库查找文献
  13. 为什么CU和DU要分离?
  14. android备份手机号码,简单四步 完成Android手机通讯录云备份操作
  15. 云原生之使用Docker部署Python应用
  16. windows中的SC命令
  17. 【PyTorch教程】P30 GPU加速
  18. python按指定概率抽样_python:抽样和抽样方法
  19. 日常计算机网络英语对话,日常话题英语口语
  20. CreateEvent使用

热门文章

  1. Maven的传递依赖
  2. Git:如何在本地没有分支时,切换分支
  3. pg日期转周_PostgreSQL的时间/日期函数使用
  4. Angular 响应式表单 patchValue和setValue
  5. Flutter仿美团应用开发笔记-入门篇
  6. Caddy – 方便够用的 HTTPS server 新手教程
  7. SSM-1-SSM整合
  8. 何必!放着985双一流专业不读,非要当程序员去内卷!
  9. 【数据结构笔记05】堆栈及其顺序存储、链式存储
  10. tomcat安装并设置开机启动