2010-04-18 48 views
5

我想有一個文件對話框只允許目錄,這裏就是我一直在努力:製作文件對話框只接受目錄

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

回答

1

Qt的4.6文檔的ShowDirsOnly說:

「只有在文件 對話框顯示的目錄。默認情況下,這兩個文件和目錄 顯示。(只適用於 目錄文件模式。)」

也許它不在「目錄」文件模式下?

7

我想的是:

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

THX它工作完美:P – Spl2nky 2014-08-25 20:51:06

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