我在QMLRepeater模型可以执行JAVASCRIPT吗?
XmlListModel {
id: model
source: "qrc:/Config/myConfig.xml"
query: "/levels/level"
XmlRole { name: "levName"; query: "@levName/string()" }
XmlRole { name: "from"; query: "from/number()" }
XmlRole { name: "to"; query: "to/number()" }
}
的XmlListModel读取这个XML文件
<levels parId = "3">
<level levelName = "level1">
<from>0</from>
<to>1</to
</level>
<level levelName = "level2">
<from>1</from>
<to>2</to>
</level>
</levels>
我也有一个文本元素:
Text {
id: myText
x: 0; y:0
text: ""
}
我需要通过XmlListModel
以迭代根据我在myList.get(3).value
中发现的情况分配到myText.text
的权限级别,其中myList
是ListModel
。
实施例:
如果myList.get(3).value
是0
之间(含)并1
(除外)我必须设置myText.text = "level1"
,如果是1
(附带)和2
(除外)之间我必须设置myText.text = "level2"
,等等。 ..
有什么建议吗?
我真的不知道'XmlListModel',ListModel和'Repeater'可能在哪里......但是你可以在'text'属性的绑定中使用JavaScript,如下所示: 'text:“level”+(Math.floor(myList.get(3).value)+ 1)' – derM
我需要XmlListModel,因为我不想直接显示参数的值,但它的相应级别(我在XML文件中找到)。所以你提供的解决方案并不适合我...... – Elena
“myText.text”的值是什么?关于你的XML文件,你可以确定什么东西(比如:是从'''''始终'''appart,总是类型为'int'?它们是否正确?它们是否连续?因此我可以当然,'model.get(n)'给我的范围从'n'到'n + 1'的条目? – derM