QtWidgets.QFileDialog打开对话框选择多个文件夹
时间: 2024-10-27 11:13:52 浏览: 18
QtWidgets.QFileDialog是一个用于在用户界面中显示文件或目录选择对话框的工具类,在Qt库中非常常见。如果你想让用户能够选择多个文件夹,你可以通过设置`QFileDialog::Options`标志来实现。下面是一个简单的例子:
```python
from PyQt5.QtWidgets import QApplication, QFileDialog
def choose_multiple_folders():
# 创建一个文件对话框实例
options = QFileDialog.Options()
options |= QFileDialog.ShowDirsOnly # 只显示文件夹选项
# 显示并获取选择的结果
selected_folders = QFileDialog.getExistingDirectory(self, '选择文件夹', '', options)
if selected_folders:
print("用户选择了以下文件夹:")
for folder in selected_folders.split(';'): # Qt会将多个路径以分号分隔
print(folder)
# 使用这个函数,确保先创建了Qt应用程序实例
if __name__ == '__main__':
app = QApplication([])
window = YourQWidget() # 替换为你的窗口类名
window.show()
# 用户点击某个按钮时触发选择文件夹操作
button_choose_folders.clicked.connect(choose_multiple_folders)
app.exec_()
```
在这个示例中,`ShowDirsOnly`选项设置了只显示文件夹的选择模式,并通过`getExistingDirectory`方法获取用户的选择结果。注意,返回的是一个包含所有选择文件夹的字符串列表,每个文件夹路径之间由分号(`;`)分隔。
阅读全文