qml设置一个简单的 TreeView例子
时间: 2024-05-01 20:19:28 浏览: 16
好的,我可以为您提供一个 QML 设置简单 TreeView 的例子。请参考以下代码:
```
import QtQuick 2.15
import QtQuick.Controls 2.15
ApplicationWindow {
visible: true
width: 300
height: 400
title: "Simple TreeView Example"
TreeView {
anchors.fill: parent
TableViewColumn {
role: "name"
title: "Name"
width: 200
}
TableViewColumn {
role: "value"
title: "Value"
width: 100
}
model: ListModel {
ListElement { name: "Item 1"; value: "Value 1" }
ListElement { name: "Item 2"; value: "Value 2" }
ListElement {
name: "Item 3"
value: "Value 3"
children: [
ListElement { name: "Child 1"; value: "Child Value 1" },
ListElement { name: "Child 2"; value: "Child Value 2" },
ListElement { name: "Child 3"; value: "Child Value 3" }
]
}
}
delegate: TreeViewColumn {
text: model.name
width: view.width - indentation - disclosure.width
indentation: 10
disclosure: TreeViewDisclosureIndicator {
visible: model.hasChildren
}
}
itemDelegate: TreeViewItem {
row: styleData.row
expanded: styleData.expanded
indentation: styleData.depth * indentation + 4
}
}
}
```
上述代码中,我们使用 `TreeView` 控件来实现树形结构,使用 `TableViewColumn` 控件来设置树形结构中的列。我们使用 `ListModel` 来设置我们要展示的数据。使用 `delegate` 控件来设置我们的每行数据。最后使用 `itemDelegate` 控件来设置我们每行中的子项。