J'ai un XmlListModel dans QMLLe modèle Répéteur peut-il exécuter 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()" }
}
qui lit ce fichier 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>
J'ai aussi un élément de texte:
Text {
id: myText
x: 0; y:0
text: ""
}
je dois itérer le XmlListModel
pour d'attribuer au myText.text
le bon niveau sur la base de ce que j'ai trouvé dans myList.get(3).value
, où myList
est un ListModel
.
Exemple:
si myList.get(3).value
est compris entre 0
(inclus) et 1
(exclu) je mettre myText.text = "level1"
, si elle est comprise entre 1
(inclus) et 2
(exclu) je mettre myText.text = "level2"
, et ainsi de suite. ..
Une suggestion?
Je ne comprends pas vraiment ce qu'est le 'XmlListModel', le' ListModel' et où votre 'Repeater' pourrait être ... Mais vous pouvez avoir JavaScript dans la liaison de la propriété' text', comme ceci: 'text:" level "+ (Math.floor (myList.get (3) .value) + 1)' – derM
J'ai besoin du XmlListModel 'car je ne veux pas afficher directement la valeur d'un paramètre, mais son niveau correspondant (que je trouve dans le fichier XML). Donc, la solution que vous avez fournie ne fonctionne pas pour moi .. – Elena
quelle sera la valeur de 'myText.text'? Quelles sont les choses que vous pouvez vous assurer au sujet de votre fichier XML (comme: sont les parties 'from' et' to' toujours '1', et toujours de type' int' sont-ils dans le bon ordre? Sont-ils continus? Donc je peux être bien sûr, que 'model.get (n)' me donne l'entrée pour la plage de 'n' à' n + 1'? – derM