qml Listview 获取当前数据
时间: 2024-03-23 11:43:54 浏览: 30
要获取 QML 的 ListView 中当前选中的数据,可以通过以下步骤实现:
1. 在你的 QML 文件中,定义一个 ListModel,用于存储你要展示的数据,例如:
```
ListModel {
id: myListModel
ListElement { name: "John"; age: 30 }
ListElement { name: "Mary"; age: 25 }
ListElement { name: "Bob"; age: 40 }
}
```
2. 将 ListModel 作为 ListView 的 model,例如:
```
ListView {
id: myListView
model: myListModel
delegate: Text { text: name } // 显示 name 属性
}
```
3. 在 ListView 中使用 selection 属性获取当前选中的项的索引,例如:
```
Button {
text: "Get current data"
onClicked: {
var index = myListView.selection.currentIndex
var data = myListModel.get(index)
console.log(data.name, data.age)
}
}
```
这样就可以在点击按钮时获取当前选中的数据。注意,这里使用的是 ListModel 的 get() 方法,传入的参数是项的索引。你可以根据需要获取其他属性值,例如上面例子中的 name 和 age。