PyQt5使用QFileDialogShowDirsOnly()选择目录
发布时间:2023-12-12 15:33:10
PyQt5中的QFileDialog模块提供了一个用于选择文件或文件夹的对话框。QFileDialog类有多个静态方法可供使用,其中之一是QFileDialog.getExistingDirectory(),用于选择文件夹。此外,PyQt5还提供了一个QFileDialog.ShowDirsOnly选项,可以使用QFileDialog.getExistingDirectory()方法的showDirOnly参数来启用。
下面是一个使用QFileDialog.getExistingDirectory()方法选择目录的简单示例:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QFileDialog
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.button = QPushButton("选择目录", self)
self.button.clicked.connect(self.select_directory)
def select_directory(self):
directory = QFileDialog.getExistingDirectory(self, "选择目录", "",
QFileDialog.ShowDirsOnly)
if directory:
print("选择的目录为:", directory)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
在上面的例子中,我们创建了一个主窗口,并在窗口中添加了一个按钮。当按钮被点击时,会调用select_directory()方法。
select_directory()方法使用QFileDialog.getExistingDirectory()方法创建一个选择目录的对话框。其中的第一个参数是父窗口对象,第二个参数是对话框的标题,第三个参数是对话框打开时显示的路径,默认为空字符串,最后一个参数是一个标志,指定只显示目录。如果选择了一个目录,它的路径会被打印出来。
