QML文字:如何使用CSS属性,例如文字修饰:上划线

问题描述 投票:0回答:1

是否可以在QML文本或QML标签元素中使用CSS属性?我对text-decoration: overline感兴趣,我想将带上划线的字符与普通字符混合使用。我知道我可以为每个字符放置单独的Text元素并使用font.overline: true,但这是不切实际的解决方案。

因此,如何以这样的方式写出“ * a b * c * d”,使得a,c和d带有上划线而不是以星号为前缀。

顺便说一下,带下划线很简单,只需使用<u></u>,但这对我没有帮助。

qt text qml label richtext
1个回答
1
投票

您的意思是在文本中内联CSS吗?好的。如果您是说将CSS应用于QML元素(就像它们是HTML),那么就没有(我觉得很讽刺:)。

根据Qt Text demo改编的示例:

import QtQuick 2.3
Pane  {
    id: root
    width: 480
    height: 320
    Rectangle {
        anchors.fill: parent;
        color: "#272822"
  }
  Column {
        spacing: 20
        Text {
            anchors.fill: parent;
            text: '<font color="white">I am the <b>very</b> model of' +
                         '<p>a <span style="text-decoration: overline">modern</span> ' +
                         '<i>major general</i>!</p></font>'
            font.pointSize: 14
            textFormat: Text.RichText
        }
  }
}

我特别需要设置textFormat: Text.RichText,对于Text.StyledText,上线不起作用。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.