listmodel 进行国际化时
ListModel{
id:listModel_2
ListElement{listModel_itemName:qsTr("NONE")}
ListElement{listModel_itemName:qsTr("PDC")}
ListElement{listModel_itemName:qsTr("CAM")}
ListElement{listModel_itemName:qsTr("PDC+CAM")}
}
调试会出现
ListElement: cannot use script for property value
解决方案:
在listmodel 中用js函数进行返回
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 |
ListModel { id: listModel_ 2 ListElement {} ListElement {} ListElement {} ListElement {} function listModel_itemName(index) { if ( listModel_itemName[ "text"
] === undefined) { listModel_itemName.text = [ qsTr( "NONE"
) , qsTr( "PDC"
) , qsTr( "CAM"
) , qsTr( "PDC+CAM"
) ] } return listModel_itemName.text[index] } } |
delegate: text调用的方法:
text : listView.model.listModel_itemName(index);
listView为调用这个listmodel的id 。
qml listmodel internationalization (国际化),布布扣,bubuko.com
qml listmodel internationalization (国际化)
原文:http://www.cnblogs.com/fuyanwen/p/3582603.html