Я создаю свой собственный диалог пользовательского файла, используя следующий код:QFileDialog просматривать папки и файлы, но только выбирать папки?
file_dialog = QtGui.QFileDialog()
file_dialog.setFileMode(QtGui.QFileDialog.Directory)
file_dialog.setViewMode(QtGui.QFileDialog.Detail)
file_dialog.setOption(QtGui.QFileDialog.DontUseNativeDialog, True)
поведение, которое я заинтересован в это для пользователя, чтобы иметь возможность просматривать как файлы и папки, но выбрать папки только. (делая файлы недоступными). Это возможно?
Примечание: Использование опции DirectoryOnly
не хорошо для меня, так как он не позволяет просматривать файлы, только папки.
Редактировать (дополнительный код, который я забыл добавить, который отвечает за возможность выбрать несколько папок, а не только один):
file_view = file_dialog.findChild(QtGui.QListView, 'listView')
if file_view:
file_view.setSelectionMode(QtGui.QAbstractItemView.MultiSelection)
f_tree_view = file_dialog.findChild(QtGui.QTreeView)
if f_tree_view:
f_tree_view.setSelectionMode(QtGui.QAbstractItemView.MultiSelection)
Код, который вы опубликовали, делает именно то, что вы говорите, что вы хотите (то есть пользователь может просматривать файлы и директории, но выбирать только dirs). Поэтому, возможно, вам нужно более четко объяснить, чего вы хотите достичь. – ekhumoro
Не совсем .. приведенный выше код позволяет вам выбирать файлы. – YaronGh
Для меня кнопка «Выбрать» активируется только при выборе каталогов. Можно * выбрать * файлы, но не выбирать их (потому что кнопка отключена). – ekhumoro