如何使用 QFileDialog 只打开目录

How to open only the directories with QFileDialog

这是我的代码:

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

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

QFileDialog 中实际上内置了一种方法,可以简化获取名为 getExistingDirectory() 的目录的过程。常见用法类似于:

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

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