qml 数组操作(qt quick1.1)

qt quick1.1中数组是不能直接写操纵的,下面借鉴写法,写数组成功。

import Qt 4.7

Rectangle {
    id: rect
    width: 640
    height: 480

    property variant a: []

    Component.onCompleted: {
        console.log("a==rect.a:", a==rect.a);
        console.log("isArray:", Array.isArray(a));
        var aa = rect.a;       // reassigning half fixed the problem
        for(var i=0; i< 4; i++) {
            aa.push( i );
            a = aa;       // reassigning back fixed the rest of the problem
            console.log(i, "a > ", JSON.stringify(rect.a), rect.a.length);
        }
    }
}
/*
Outputs the following:

a==rect.a: false
isArray: true
0 a >  [0] 1
1 a >  [0,1] 2
2 a >  [0,1,2] 3
3 a >  [0,1,2,3] 4
*/


你可能感兴趣的:(Qt,Linux)