我正在构建一个使用ArcGIS SDK的简单QML应用程序,目前的目的只是学习SDK功能。 我想要做的是有一个可缩放的地图和一个显示当前地图比例的文本框。以下是我为此编写的代码,基于ArcGIS website上的示例。
import QtQuick 2.6
import QtQuick.Controls 1.4
import Esri.ArcGISRuntime 100.1
ApplicationWindow {
id: appWindow
width: 800
height: 600
title: "Untitled"
MapView {
id: mainmapview
attributionTextVisible: false
anchors.topMargin: 0
anchors.rightMargin: 0
anchors.fill: parent
focus: true
Map {
id: mainmap
BasemapLightGrayCanvasVector {}
}
onMapScaleChanged: scaletext.text=mainmapview.scale.toString()
Text {
id: scaletext
x: 10
y: 10
width: 285
height: 45
text: qsTr("Text")
font.pixelSize: 12
}
}
}
地图加载,我可以看到它没问题,但是比例文本框不起作用:它总是将比例显示为' 1',无论我放大或缩小多少。显然这不正确。我是否将类型转换搞乱到文本?
关于如何解决这个问题的任何指示都会很棒。感谢。
答案 0 :(得分:0)
其实我自己弄清楚了。这一行:
onMapScaleChanged: scaletext.text=mainmapview.scale.toString()
应该是:
onMapScaleChanged: scaletext.text=mainmapview.mapScale.toString()
如果其他人遇到同样的问题并且可以通过谷歌找到这个问题,我可以回答问题,而不是删除问题。