PyQt:如何从用户那里获得大量文件名?

时间:2011-12-14 01:17:35

标签: python pyqt pyqt4 qfiledialog

pyqt中的FileDialog是从用户那里获取文件的一个路径的绝佳方法,但有一种很好的方法可以从用户那里获取大量文件吗?

2 个答案:

答案 0 :(得分:6)

使用QFileDialog.getOpenFileNames允许用户选择多个文件:

from PyQt4 import QtGui, QtCore

class Window(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        layout = QtGui.QVBoxLayout(self)
        self.button = QtGui.QPushButton('Select Files', self)
        layout.addWidget(self.button)
        self.button.clicked.connect(self.handleButton)

    def handleButton(self):
        title = self.button.text()
        for path in QtGui.QFileDialog.getOpenFileNames(self, title):
            print path

if __name__ == '__main__':

    import sys
    app = QtGui.QApplication(sys.argv)
    window = Window()
    window.show()
    sys.exit(app.exec_())

答案 1 :(得分:0)

我建议你让用户使用drag& amp;删除直接从他们喜欢的文件浏览器添加文件。正如我在wxpython中做到这一点没有任何麻烦,用户反馈非常好:)