pyqt5-QFileDialog文件对话框组件

1、介绍

QFileDialog提供了文件选择窗口与处理。

2、方法

(1)单一文件选择

getOpenFileName(parent: QWidget = None, caption: str = '', directory: str = '', filter: str = '', initialFilter: str = '', options: Union[QFileDialog.Options, QFileDialog.Option] = 0) -> Tuple[str, str]
  • 返回元组,第一个元素为选中的绝对路径,第二个为可供选择的文件类型
  • 如果是取消,则返回(”, ”)
  • parent:组件对象,表示弹窗所属
  • caption:标题
  • directory:打开时的路径
  • filter:过滤,其根据()内的项做正则匹配,比如*b.txt也是可行的
filePath,_ = QFileDialog.getOpenFileName(
    self.w,  # 父窗口对象
    "选择你要上传的图片",  # 标题
    r"d:\\data",  # 起始目录
    "图片类 (*.pg *.jpg *.bmp)"  # 选择类型过滤项,过滤内容在括号中
)
# ('I:/1.jpg', '图片类 (*.pg *.jpg *.bmp)')

选择结果示例:K:/abc/tomcat.txt

(2)多文件选择

getOpenFileNames(parent: QWidget = None, caption: str = '', directory: str = '', filter: str = '', initialFilter: str = '', options: Union[QFileDialog.Options, QFileDialog.Option] = 0) -> Tuple[List[str], str]
  • 使用方法与单文件选择一致,返回元组,第一个元素为str的列表,如果未选择,返回空的list。做多项选择时,按住ctrl键

2.3 保存文件

getSaveFileName(parent: QWidget = None, caption: str = '', directory: str = '', filter: str = '', initialFilter: str = '', options: Union[QFileDialog.Options, QFileDialog.Option] = 0) -> Tuple[str, str]
  • 无论何种操作,最终都会返回(str, str)类型的数据,其元素0为选择文件的绝对路径,元素1为类型声明。
    • 如果未选择文件,点击取消,返回('', '')
    • 如果是选择已创建文件,或者是手动输入已存在的文件名,系统会询问是否确认选择。点击确认则结束选择,点击否则会继续选择
    • 类型声明并不会包含在选择的路径中
  • 无论是选择已创建文件还是未创建文件,选择过程中都不会造成影响,仅仅只是确定路径

 

(4)选择文件夹

getExistingDirectory(parent: QWidget = None, caption: str = '', directory: str = '', options: Union[QFileDialog.Options, QFileDialog.Option] = QFileDialog.ShowDirsOnly) -> str
  • 如果取消,返回”
  • 如果选中,返回绝对路径
  • 可以在打开的窗口中新建,然后再选中

3、示例

posted @   挖洞404  阅读(187)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示