【问题标题】:How to open only the directories with QFileDialog [duplicate]如何仅使用 QFileDialog 打开目录 [重复]
【发布时间】:2022-01-18 22:41:15
【问题描述】:

这是我的代码:

    def open(self):
        file_dialog = QtWidgets.QFileDialog(self)
        file_dialog.setMimeTypeFilters(["dir"])

我只想打开目录,我使用setMimeTypeFilters方法,当我设置“image/jpeg”或“video/mp4”等参数时效果很好。

【问题讨论】:

  • 目录没有标准的 mime 类型。在 Windows 上,它们根本没有 mime 类型。你为什么不使用fileMode 属性?你可以做file_dialog.setFileMode(file_dialog.Directory)

标签: python pyqt pyside2 qfiledialog qtwidgets


【解决方案1】:

实际上QFileDialog 中内置了一个方法,可以简化获取目录的过程,称为getExistingDirectory()。常见用法如下所示:

directory = QtWidgets.QFileDialog.getExistingDirectory(caption='caption', directory='C:\\path\\to\\starting\\directory')

它直接将所选目录作为字符串返回,如果对话框被取消,则返回 None。如果您正在寻找对对话的更多控制,这可能不是最佳选择。否则,这会使过程非常简单。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多