【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件)

这篇具有很好参考价值的文章主要介绍了【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

QFileDialog的介绍和使用

QFileDialog是Qt框架中提供的一个文件选择对话框。它可以让用户通过图形界面的方式选择文件或目录,并提供了许多与文件操作相关的实用功能,例如文件过滤、文件类型限制、文件名默认值、默认目录等。

它具有以下常用的静态方法:

  1. getOpenFileName():选择单个文件打开,返回文件的完整路径。
  2. getOpenFileNames():选择多个文件打开,返回文件的完整路径列表。
  3. getSaveFileName():选择单个文件保存,返回文件的完整路径。
  4. getExistingDirectory():选择一个目录打开,返回目录的完整路径。

QFileDialog的常见用法是在QPushButton的clicked信号或QAction的triggered信号的槽函数中打开对话框,例如:

from PyQt5.QtWidgets import *
import sys


class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setup_ui()

    def setup_ui(self):
        self.widget = QWidget()
        self.setCentralWidget(self.widget)

        vbox = QVBoxLayout(self.widget)

        btu1 = QPushButton('选择单个文件')
        btu2 = QPushButton('选择多个文件')
        btu3 = QPushButton('选择单个目录')

        btu1.clicked.connect(self.Select_a_single_file)
        btu2.clicked.connect(self.Select_multiple_files)
        btu3.clicked.connect(self.Select_a_single_directory)

        vbox.addWidget(btu1)
        vbox.addWidget(btu2)
        vbox.addWidget(btu3)

    # 选择单个文件
    def Select_a_single_file(self):
        file_path, _ = QFileDialog.getOpenFileName(self, "选择文件", "", "All Files (*)")
        if file_path:
            print(file_path)

    # 选择多个文件
    def Select_multiple_files(self):
        file_paths, _ = QFileDialog.getOpenFileNames(self, "选择文件", "/", "Excel文件 (*.xlsx *xls);;Word文件 (*.docx)")
        if file_paths:
            print(file_paths)

    def Select_a_single_directory(self):
        dir_path = QFileDialog.getExistingDirectory(self, "选择目录", "F:/", QFileDialog.ShowDirsOnly)
        if dir_path:
            print("选择的目录路径:", dir_path)


if __name__ == '__main__':

    app = QApplication(sys.argv)

    window = MainWindow()
    window.show()

    sys.exit(app.exec_())

注意:在QFileDialog中,我们可以使用斜杠 “/” 指定对话框中显示的起始目录。在这个例子中,"/" 表示从文件系统的根目录开始展示文件选择对话框。""表示从当前目录开始展示文件选择对话框。实际上,你可以根据需要将起始目录更改为你想要的任何有效路径,例如当前工作目录、特定目录结构等。

运行结果:
【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt文章来源地址https://www.toymoban.com/news/detail-784030.html

  • 选择单个文件
    • 点击“选择单个文件”后,从当前目录打开文件选择对话框。
      【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt
      【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt
  • 选择多个文件
    • 点击“选择多个文件”后,从根目录打开文件选择对话框。
      【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt
      【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt
  • 选择单个目录
    • 点击“选择单个目录”后,从F盘打开文件选择对话框。
      【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt
      【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件),PyQt小知识,pyqt

到了这里,关于【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • pyqt5-确认对话框

     

    2024年02月12日
    浏览(43)
  • 【pyqt5界面化工具开发-8】窗口开发-QDialog对话框

    目录 一、调用父类的菜单 二、添加更多的布局在对话框内 和前面Qwedget一样的结构(不做过多介绍) 可以参考代码中的注释 这和前面讲的Qwedget窗口布局基本上一样了 运行结果:

    2024年02月11日
    浏览(57)
  • MFC 通用对话框之文件对话框

    CFileDialog 类 封装了Windows通用文件对话框,Windows通用文件对话框提供了轻松实现与Windows标准一致的打开文件、保存文件、另存文件对话框的方法。 当我们用CFileDialog类的构造函数生成一个对象后就修改 m_ofn 结构体对象里的值, m_ofn 的类型为 OPENFILENAME。 CFileDialog类构造函数的

    2024年02月05日
    浏览(66)
  • 安卓android日期选择器对话框 DatePickerDialog,实现日期选择,滚动式选择日期

    基本想法是:点击一个文本框,然后弹出日期选择器对话框,选择日期按下确定键后,文本框显示所选择的日期。可以有多种显示的主题,完整代码会在最后给出。 一、设置XML文件 记得给TextView取一个id,这里我取的id是:date 二、获取文本框组件 三、设置文本框的点击事件

    2023年04月15日
    浏览(49)
  • WPF HandyControl 界面交互反馈:对话框+加载框+列表选择

    我学了HandyControl的基础使用,但是发现HandyControl 封装了基础的消息提示,但是没有封装基础的交互逻辑。可能是因为我写了Uniapp,我知道封装了基础的交互其实一般就够用了。 Uniapp 界面交互反馈 我现在觉得,代码要低耦合一点,每个模块都纯粹一点,这一次我就不添加Nl

    2024年01月19日
    浏览(39)
  • JavaScript 两种方案打开文件对话框

    在编写项目时,难免会遇到想要用户上传文件的场景。文件流处理之前的第一关是打开文件对话框让用户选取文件,本文主要讲解如何打开这个文件对话框,同时带来了一种对于文件系统操作的新概念 API。 要明确一点的是文件对话框是浏览器的功能,开发者不能自定义文件

    2024年02月07日
    浏览(62)
  • Qt 文件对话框使用 Deepin风格

    当你在Deepin或UOS 上开发 Qt 程序时,如果涉及到文件对话框功能,那么就会遇到调用原生窗口的问题。 如果你使用的是官方的Qt版本,那么在Deepin或者UOS系统上,弹出的文件对话框会是如下这样: 而Deepin或UOS系统提供的默认对话框: 可以看到,Qt自身提供的对话框太丑,与系

    2024年02月13日
    浏览(47)
  • qt学习:实战 笔记本 (对话框+文件)

    目录 第一步,配置ui界面  第二步,头文件  第三步,颜色对话框点击事件  第四步,字体对话框点击事件  第五步,输入对话框点击事件  第六步,打开文件对话框点击事件  第七步,另存为对话框点击事件

    2024年01月22日
    浏览(36)
  • qt学习:QT对话框+颜色+文件+字体+输入

    目录 概述 继承图 QColorDialog 颜色对话框 QFileDialog 文件对话框 保存文件对话框 QFontDialog 字体对话框 QInputDialog 输入对话框 对于对话框的功能,在GUI图形界面开发过程,使用是非常多,那么Qt也提供了丰富的对话框类 QDialog是所有对话框的基类 QWidget  QDialog QColorDialog 颜色对话框

    2024年01月21日
    浏览(68)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包