Qt 从MapItemView获取模型索引
我试图建立一个交互式地图应用程序,允许我添加和修改地图项目。我可以添加新的地图项目,但我仍然有问题修改模型。在下面的代码中,如果我有多个项目,则Qt 从MapItemView获取模型索引,qt,qml,Qt,Qml,我试图建立一个交互式地图应用程序,允许我添加和修改地图项目。我可以添加新的地图项目,但我仍然有问题修改模型。在下面的代码中,如果我有多个项目,则remove功能始终会删除装箱的第一个项目,而不是所选的当前项目。我不仅想修改模型的视图,还想修改模型的currentIndex ListModel { id: mapModel } Map { id: map //... MapItemView { model: mapModel del
remove
功能始终会删除装箱的第一个项目,而不是所选的当前项目。我不仅想修改模型的视图,还想修改模型的currentIndex
ListModel {
id: mapModel
}
Map {
id: map
//...
MapItemView {
model: mapModel
delegate: MapCircle {
radius: 80000
color: 'blue'
center {
latitude: lat
longitude: longi
}
MouseArea {
onClicked: {
mapModel.remove(model.index)
}
}
}
}
MouseArea {
anchors.fill: parent
onClicked: {
var coord = map.toCoordinate(Qt.point(mouse.x,mouse.y))
mapModel.append({lat : coord.latitude, longi: coord.longitude});
}
}
}
我自己找到了答案。只需使用
mapModel.remove(index)
而不是mapModel.remove(model.index)