PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件

前言
本篇在讲什么

PyQt5调取windows选择和导出弹窗
本篇适合什么

适合初学Python的小白
适合使用pyqt5的开发项目

本篇需要什么

对Python语法有简单认知
依赖Python3.7环境
依赖Pycharm编辑器

本篇的特色

具有全流程的图文教学
重实践,轻理论,快速上手
提供全流程的源码内容


★提高阅读体验★

♠ 一级标题

♥ 二级标题

♣ 三级标题

♦ 四级标题


目录

  • ♠ 前言
  • ♠ 选择
    • ♥ 选择单个文件
    • ♥ 选择多个文件
    • ♥ 选择文件夹
  • ♠ 保存
  • ♠ 推送
  • ♠ 结语


♠ 前言

最近有需求,需要调起windows的窗口,去选择文件或者去保存文件,就是我们常见的选择窗,Qt框架提供了对应的接口,本篇就通过Pyqt5的代码实现

PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第1张图片


♠ 选择

首先我们需要在代码中引入QFileDialog

from PyQt5.QtWidgets import QFileDialog

♥ 选择单个文件

调用以下代码可以调起选择窗口

下述代码意味着默认打开路径为桌面的test文件夹,只查看png文件,窗口名字叫做选择文件

fileInfo = QFileDialog.getOpenFileName(UI_WIN, "选择文件", "C:/Users/Administrator/Desktop/test", "Png(*.png)")

PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第2张图片
PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第3张图片

  • 参数1:父节点窗口
  • 参数2:窗口名字
  • 参数3:默认打开弹窗的显示路径
  • 参数4:过滤文件,多格式写法files(*.png *.txt),显示全部写法all files(*)
  • 返回值:包含文件路径和过滤配置,不选择依然返回,不过是空值,如下图所示

PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第4张图片


♥ 选择多个文件

在大多情况下我们需要选择多个文件,并获取其信息,这个时候我们用下边的接口

fileInfo = QFileDialog.getOpenFileNames(UI_WIN, "选择多文件", "C:/Users/Administrator/Desktop/test", "all files(*)")

PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第5张图片

和单选几乎没有区别,就是接口多了个s,参数作用一直,输出文件信息多个


♥ 选择文件夹

下面代码让我们可以选择单个文件夹,并获取对应文件夹的路径信息

dirInfo = QFileDialog.getExistingDirectory(UI_WIN, "选择文件夹", "C:/Users/Administrator/Desktop")

PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第6张图片
PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第7张图片

  • 参数1:父节点窗口
  • 参数2:窗口名字
  • 参数3:默认打开弹窗的显示路径
  • 返回值:选择文件夹的路径

♠ 保存

上文我们已经了解到如何去选择文件和文件夹,这次我们去处理如何调出保存弹窗

fileInfo = QFileDialog.getSaveFileName(UI_WIN, "保存文件", "C:/Users/Administrator/Desktop/test", "all files(*)")

PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第8张图片
PyQt5调用Window弹窗,选择文件、选择多个文件、选择文件夹、保存文件_第9张图片

  • 参数1:父节点窗口
  • 参数2:窗口名字
  • 参数3:默认打开弹窗的显示路径
  • 参数4:过滤文件,多格式写法files(*.png *.txt),显示全部写法all files(*)
  • 返回值:根据输入文件名和当前路径的组合地址,关闭则返回空值

♠ 推送

  • Github
https://github.com/KingSun5

♠ 结语

若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。

本文属于原创文章,转载请评论留言,并在转载文章头部著名作者出处

你可能感兴趣的:(pyhton学习笔记,qt,开发语言)