pyqt treeweiw model
时间: 2023-07-08 14:46:53 浏览: 60
tree model
PyQt中的QTreeView控件可以使用Model来显示数据。下面是一个简单的示例,演示如何使用QTreeView和QStandardItemModel来显示一个简单的树形结构:
```python
from PyQt5.QtWidgets import QApplication, QTreeView, QStandardItemModel, QStandardItem
app = QApplication([])
tree = QTreeView()
model = QStandardItemModel()
model.setHorizontalHeaderLabels(['Name', 'Value'])
parent1 = QStandardItem('Parent 1')
parent2 = QStandardItem('Parent 2')
child1 = QStandardItem('Child 1')
child2 = QStandardItem('Child 2')
child3 = QStandardItem('Child 3')
parent1.appendRow([child1, QStandardItem('10')])
parent1.appendRow([child2, QStandardItem('20')])
parent2.appendRow([child3, QStandardItem('30')])
model.appendRow([parent1, QStandardItem('')])
model.appendRow([parent2, QStandardItem('')])
tree.setModel(model)
tree.show()
app.exec_()
```
在这个示例中,我们创建了一个QStandardItemModel。我们使用setHorizontalHeaderLabels方法来设置表头,然后创建了两个父项和三个子项,并将它们添加到模型中。最后,我们将模型设置为QTreeView的模型,并显示树形结构。
当然,你可以根据自己的需求来自定义Model,并将其与QTreeView控件一起使用。
阅读全文