设计pyqt5的qtreeview加载文件夹模型
时间: 2024-04-30 18:23:40 浏览: 132
以下是一个基本的QTreeView加载文件夹模型的PyQt5代码:
```python
import os
import sys
from PyQt5.QtWidgets import QApplication, QFileSystemModel, QTreeView, QWidget, QVBoxLayout
class FolderViewer(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('Folder Viewer')
self.setGeometry(300, 200, 800, 600)
# 创建文件系统模型
self.model = QFileSystemModel()
self.model.setRootPath('') # 设置模型根路径为当前目录
# 创建树视图
self.tree = QTreeView()
self.tree.setModel(self.model)
self.tree.setRootIndex(self.model.index('')) # 设置根索引为当前目录
self.tree.setAnimated(False)
self.tree.setIndentation(20)
self.tree.setSortingEnabled(True)
# 创建布局
layout = QVBoxLayout()
layout.addWidget(self.tree)
self.setLayout(layout)
if __name__ == '__main__':
app = QApplication(sys.argv)
folder_viewer = FolderViewer()
folder_viewer.show()
sys.exit(app.exec_())
```
这个程序使用QFileSystemModel类作为模型,它可以加载文件系统中的文件和文件夹。我们创建了一个FolderViewer类来显示QTreeView和QFileSystemModel。QTreeView显示文件系统中的文件和文件夹,并且可以展开和折叠文件夹。我们使用QVBoxLayout布局将QTreeView添加到窗口中。最后,我们启动应用程序并显示FolderViewer窗口。
阅读全文