我试图在QML应用程序中动态构建相同类型项目的矩阵,并使它保持动态,以便您可以随时更改c ++文件中的行数和列数。这一直很好,但是现在,要单独访问它们,我想给它们提供动态名称。因此,我嵌套了两个转发器,并尝试如下设置objectName:
Repeater{
id: rows
model: Matrix1.row //number of rows in Matrix1-Object
Repeater{
id: columns
model: Matrix1.column //number of columns in Matrix1-Object
RepeatedItem{
objectName: (index) +"."+ (rows.index) //matrix elements are
supposed to be numbered x.y because of the nested repeaters, e.g.
0.0 for the first element
}
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我似乎无法访问外部索引。显示第一个值,第二个值由我的GUI的TextArea中未定义的String表示。如果我将一个新属性添加到外部Repeater并将其设置为与index相同的值,它将被设置一次并为每个重复的行保留第一个值(0)。
不可能以某种方式动态达到此外部索引值吗?还是有人知道更好的方法来动态创建可单独访问的QML项目的二维数组?