如何将值推送到 QML 属性变量二维数组 - 动态?
Posted
技术标签:
【中文标题】如何将值推送到 QML 属性变量二维数组 - 动态?【英文标题】:How to push values to QML property variant two dimensional array - dynamically? 【发布时间】:2014-09-29 11:19:10 【问题描述】:这是我尝试过的:
import QtQuick 2.0
Rectangle
property variant twoDimTempArray: [[]]
property variant oneDArray: [1,2,3]
MouseArea
anchors.fill: parent
onClicked:
twoDimTempArray.push (oneDArray)
twoDimTempArray[0].push (oneDArray)
twoDimTempArray[0][0] = oneDArray[0]
console.log (twoDimTempArray)
它们的结果都是[]
。
如何在 QML 属性变量二维数组中推送值?
【问题讨论】:
【参考方案1】:将值动态添加到一维 QML variant
的一种方法是填充一个普通的 javascript 数组,然后将其分配给 QML variant
。
import QtQuick 2.0
Rectangle
property variant oneDArray: []
MouseArea
anchors.fill: parent
onClicked:
var t = new Array (0)
t.push(11)
t.push(12)
oneDArray = t
console.log (oneDArray)
输出:
Starting /home/.../documents/test/build-junk-Desktop_Qt_5_1_0_GCC_64bit-Debug/junk...
QML debugging is enabled. Only use this in a safe environment.
[11,12]
/home/.../documents/test/build-junk-Desktop_Qt_5_1_0_GCC_64bit-Debug/junk exited with code 0
我对二维数组尝试了相同的方法,它可以工作。
【讨论】:
以上是关于如何将值推送到 QML 属性变量二维数组 - 动态?的主要内容,如果未能解决你的问题,请参考以下文章