问题描述
我要更改文本的颜色,如下所示:
text: "Hello World"
“ Hello”应更改为“ blue”, “世界”应更改为“红色”。
我也不想使用以下给定格式(因为我正在从cpp中读取颜色):
Text {
text: "<font color=\"#0000FF\">Hello</font> <font color=\"#FF0000\">World</font>"
}
是否还有其他方法可以仅更改一个单词(以qml为单位)的颜色?
解决方法
另一种方法是使用Flow
和多个Text
元素。
Flow {
Text {
text: "Hello"
color: "#0000FF"
}
Text {
text: " "
}
Text {
text: "World"
color: "#FF0000"
}
}
我也不想使用以下给定格式(因为我正在从cpp中读取颜色):
Text { text: "<font color=\"#0000FF\">Hello</font> <font color=\"#FF0000\">World</font>" }
是什么阻止您执行以下操作?
text: `<font color="${cppObject.helloColor}">Hello</font> <font color="${cppObject.worldColor}">World</font>`
这使用了template literals,但是您也可以使用普通的字符串连接来实现。