繁体   English   中英

如何从另一个Qml的Qml属性中获取价值?

[英]How to get value from a property in Qml from another Qml?

我知道这个问题被问过很多次,但是没有答案可以帮助我。 我有两个QML文件。 第一个Qml文件中有一个地图,当我在地图上按时,它将打开一个包含以下代码的窗口:

MouseArea{
    id: mouseArea
    property var positionRoot: map.toCoordinate(Qt.point(mouseX, mouseY))
    anchors.fill: parent
    onClicked: {
            var component = Qt.createComponent("addAttribute.qml")
            if (component.status === Component.Ready) {
            var dialog = component.createObject(parent,{popupType: 1})
            dialog.show()
       }
    }
}

该窗口具有labeltextfieldbutton 我想要的是获取在第一个QML文件中创建的property (positionRoot)的值。 我怎么可能呢?

多亏@folibis,它才有效。 这是需要添加的代码。

MouseArea{
        id: mouseArea
        property var positionRoot: map.toCoordinate(Qt.point(mouseX, mouseY))
        anchors.fill: parent
        onClicked: {
                var component = Qt.createComponent("addAttribute.qml")
                if (component.status === Component.Ready) {
                var dialog = component.createObject(parent,{popupType: 1})
                dialog.sqlPosition = positionRoot
                dialog.show()
           }
        }
    }

在第二个窗口中,我仅创建一个名为sqlPosition的新属性。 例如:

Window {
        id: secondWindow
        property var sqlPosition
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM