我正在使用Qt Creator(社区)5.5.1在QML的支持下进行项目.
我有以下代码:
main.qml:
MouseArea { anchors.fill: parent onpressed: console.log('latitude = '+ (map.toCoordinate(Qt.point(mouse.x,mouse.y)).latitude), 'longitude = '+ (map.toCoordinate(Qt.point(mouse.x,mouse.y)).longitude));
因此,当我点击屏幕时,控制台上会显示该位置在地图上的坐标.但是我不知道如何使用这些坐标将标记放置在发生点击的屏幕上.这是标记代码:
MapQuickItem { ID:marker coordinate: Qtpositioning.coordinate(******, ******);//stars are the coordinates sourceItem: Image{ ID: image source: "marker2.png" } anchorPoint.x: image.wIDth / 2 anchorPoint.y: image.height }
我该怎么做才能将标记放置在地图上点击发生的坐标处?谢谢.
解决方法:
只需在onpressed处理程序中设置标记的坐标即可.类似于以下内容:
@R_301_5565@ QtQuick 2.0@R_301_5565@ QtLocation 5.5Map { ID: map plugin: Plugin {name: "osm"} zoomLevel: (maximumZoomLevel - minimumZoomLevel)/2 center { // The Qt Company in oslo latitude: 59.9485 longitude: 10.7686 } MapQuickItem { ID:marker sourceItem: Image{ ID: image source: "marker2.png" } coordinate: map.center anchorPoint.x: image.wIDth / 2 anchorPoint.y: image.height / 2 } MouseArea { anchors.fill: parent onpressed: { marker.coordinate = map.toCoordinate(Qt.point(mouse.x,mouse.y)) } }}
总结 以上是内存溢出为你收集整理的android-QML地图:点击屏幕时获取坐标全部内容,希望文章能够帮你解决android-QML地图:点击屏幕时获取坐标所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)