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

PyQt5中使用ShowDirsOnly()方法打开文件夹示例代码

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

在PyQt5中,可以使用QFileDialog类的ShowDirsOnly()方法打开文件夹。该方法将文件对话框设置为只能选择文件夹,而不能选择文件。下面是一个示例代码:

from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("Open Directory Example")
        self.setGeometry(100, 100, 400, 300)
        
    def open_directory(self):
        options = QFileDialog.Options()
        options |= QFileDialog.ShowDirsOnly
        directory = QFileDialog.getExistingDirectory(self, "Open Directory", "", options=options)
        if directory:
            print("Selected directory:", directory)

if __name__ == '__main__':
    app = QApplication([])
    window = MainWindow()
    window.show()
    window.open_directory()
    app.exec()

在上面的代码中,我们首先创建了一个MainWindow类,并定义了open_directory()方法。在open_directory()方法中,我们创建了一个QFileDialog实例,并将Options设置为ShowDirsOnly,以便只能选择文件夹。

然后,我们调用QFileDialog的getExistingDirectory()方法,该方法将打开一个文件对话框,只允许选择文件夹。如果用户选择了一个有效的文件夹,那么我们将打印出选择的文件夹路径。

最后,我们创建一个QApplication实例,实例化MainWindow类,并调用show()方法和open_directory()方法来显示窗口并打开文件夹对话框。

运行上述程序,将会弹出一个文件夹对话框,并且只能选择文件夹,不能选择文件。当用户选择一个文件夹后,程序将会打印出所选择的文件夹路径。

这是一个简单的使用ShowDirsOnly()方法打开文件夹的示例代码。你可以根据自己的需求使用该方法来处理文件夹选择。