pyqt treeweiw model
时间: 2023-07-08 15:46:39 浏览: 106
在PyQt中,要在树形视图中展示数据,需要使用一个数据模型。常用的数据模型有QStandardItemModel、QFileSystemModel和QTreeWidget等。
QStandardItemModel是一种通用的数据模型,可以用来展示任意的数据结构。下面是一个简单的例子,展示了如何使用QStandardItemModel创建一个树形视图:
```python
import sys
from PyQt5.QtWidgets import QApplication, QTreeView, QStandardItemModel, QStandardItem, QWidget, QVBoxLayout
app = QApplication(sys.argv)
window = QWidget()
layout = QVBoxLayout(window)
model = QStandardItemModel()
root = model.invisibleRootItem()
for i in range(3):
item = QStandardItem('Item {}'.format(i))
for j in range(3):
child_item = QStandardItem('Child {}'.format(j))
item.appendRow(child_item)
root.appendRow(item)
tree = QTreeView()
tree.setModel(model)
layout.addWidget(tree)
window.show()
sys.exit(app.exec_())
```
在这个例子中,我们创建了一个QStandardItemModel,并通过invisibleRootItem()方法获取其根节点。然后我们创建了三个一级节点(Item 0、Item 1和Item 2),每个一级节点下面又添加了三个二级节点(Child 0、Child 1和Child 2)。最后,我们将这些节点添加到根节点下,并将模型设置为树形视图的数据源。
希望这个例子能够帮助您了解如何在PyQt中使用QStandardItemModel创建一个树形视图。
阅读全文