我Label
在 QML 文件中有一个 QtQuick ,如下所示:
import QtQuick.Controls 1.3 as Controls
Controls.Label {
id: lbl
text: "This is some <b>bold text</b> with extra white space"
}
如果text
我的标签的属性包含任何 HTML,则标签将其呈现为 HTML,并将原始文本中的多个空格压缩为一个空格(如果文本不包含 HTML,则将其呈现为普通文本,空格为保存)。
QWidget
有一种setStyleSheet
方法显然支持样式“white-space: pre-wrap”,这是我获得 HTML 渲染以保留空白所需的方法,但我不确定是否可以将其应用于 QML 文件中的标签. 有没有办法实现这一目标?
编辑:这个答案:https : //stackoverflow.com/a/2756376/14606显示了为QLabel
. 有什么方法可以编写一个函数,让我通过我的 QtQuickLabel
并将其转换为 aQLabel
并以这种方式设置样式表?
您实际上Label
可以通过在原始字符串上进行文本替换并将所有常规空格(“”)替换为​ 
(这是一个零长度字符串后跟一个常规字符串)。然后Label
将忠实地渲染连续的空格,就好像空白样式已设置为预换行一样。不幸的是,这只是一种工作(至少对我的目的而言),因为Label
在两种情况下都不会以相同的方式处理换行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句