使文件对话框仅接受目录

时间:2010-04-18 14:26:21

标签: python qt4 pyqt4 filedialog

我希望文件对话框只允许目录,这是我一直在尝试的内容:

fileDialog = QtGui.QFileDialog()
fileDialog.setFileMode(QtGui.QFileDialog.ShowDirsOnly)
filename = fileDialog.getOpenFileName(self, 'Select USB Drive Location'))

3 个答案:

答案 0 :(得分:7)

我想要的是:

directory = QtGui.QFileDialog.getExistingDirectory(self, 'Select USB Drive Location')

答案 1 :(得分:6)

这是一个老问题,我知道,但也许这会帮助其他人。

在调用的方法中使用此代码段以显示文件框:

dialog = QtGui.QFileDialog(self)
dialog.setFileMode(QtGui.QFileDialog.Directory)
dialog.setOption(QtGui.QFileDialog.ShowDirsOnly, True)

if dialog.exec_():
    for d in dialog.selectedFiles():
        print d

答案 2 :(得分:1)

ShowDirsOnly的Qt 4.6文档说:

  

“仅显示文件中的目录   对话。默认情况下,两个文件和   目录显示。 (仅限于   目录文件模式。)“

也许它不在“目录”文件模式下?