首页 文章

如何使用ArcGIS for QML / QT检索 Map 比例?

提问于
浏览
0

我正在构建一个使用ArcGIS SDK的简单QML应用程序,目前的目的只是学习SDK功能 . 我想做的是有一个可缩放的 Map 和一个显示当前 Map 比例的文本框 . 以下是我为此编写的代码,基于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
        }
    }
}

Map 加载,我可以看到它没问题,但是比例文本框不起作用:它总是将比例显示为'1',无论我放大或缩小多少 . 显然这是不正确的 . 我搞砸了文字的类型转换吗?

关于如何解决这个问题的任何指示都会很棒 . 谢谢 .

1 回答

  • 0

    其实我自己弄清楚了 . 这一行:

    onMapScaleChanged: scaletext.text=mainmapview.scale.toString()
    

    应该:

    onMapScaleChanged: scaletext.text=mainmapview.mapScale.toString()
    

    而不是删除我已回答的问题,以防其他人有相同的问题,并可以通过谷歌找到这个 .

相关问题