我正在尝试创建一个文件选择器来选择一个程序(可执行文件)。
我对QDir和QFileDialog文档的理解是,以下内容应显示仅包含可执行文件的文件对话框。但是,即使目录中有可执行文件,它也根本没有显示任何文件(也没有任何目录)。
self.browseDialog = QtGui.QFileDialog()
self.browseDialog.setFilter(QtCore.QDir.Executable | QtCore.QDir.Files)
self.browseDialog.exec_()
我做错了吗?这可以实现吗?我还想做一些更复杂的事情:显示可执行文件或以某些扩展名结束。
我在Ubuntu Maverick上使用PyQt 4.7.4。
答案 0 :(得分:0)
我正在使用PyQt5,但我只想做类似的事情,我只需要.txt文件。为了执行此操作,我使用了getFileOpenName()和filter =选项。它适用于我的目的。函数名称已从PyQt4更改为PyQt5,但下面的链接具有PyQt4替代名称。
http://pyqt.sourceforge.net/Docs/PyQt5/pyqt4_differences.html
getOpenFileNameAndFilter(),getOpenFileNamesAndFilter()和 PyQt4的QFileDialog的getSaveFileNameAndFilter()方法现在已经有了 已重命名为getOpenFileName(),getOpenFileNames()和 PyQt5中的getSaveFileName()。 PyQt4的实现 getOpenFileName(),getOpenFileNames()和getSaveFileName()都没有 PyQt5支持。