欢迎访问宙启技术站
智能推送

PyQt5中使用QFileDialogShowDirsOnly()选择文件夹

发布时间:2023-12-12 15:39:46

在PyQt5中,可以使用QFileDialog的getExistingDirectory()方法来选择文件夹。此方法打开一个对话框,允许用户选择一个文件夹。下面是一个使用QFileDialog.getExistingDirectory()方法的示例:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('File Dialog Example')
        self.setGeometry(100, 100, 300, 200)

        # 创建一个按钮,当点击时打开文件对话框选择文件夹
        self.button = QPushButton('Select Folder', self)
        self.button.setGeometry(100, 100, 100, 30)
        self.button.clicked.connect(self.openFolderDialog)

    def openFolderDialog(self):
        folder = QFileDialog.getExistingDirectory(self, 'Select Folder')
        if folder:
            print('Selected Folder:', folder)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    mainWindow = MainWindow()
    mainWindow.show()
    sys.exit(app.exec_())

在这个例子中,我们创建了一个主窗口,其中包含一个按钮。当点击按钮时,会调用openFolderDialog()方法。该方法会打开一个文件夹对话框,让用户选择文件夹。

您可以运行这个示例,点击按钮,选择一个文件夹,它将打印所选择的文件夹的路径。如果未选择文件夹,将不会进行任何打印。

在PyQt5中,还有其他一些方法可供选择文件夹,比如QFileDialog.getExistingDirectoryUrl()方法。此外,您还可以使用QFileDialog的静态方法来选择文件夹,例如QFileDialog.getExistingDirectory()。这些方法可以根据您的需求选择最合适的方法来选择文件夹。