Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 从MapItemView获取模型索引_Qt_Qml - Fatal编程技术网

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)