启用" elide" QML Text元素中的属性,但在GridLayout中

时间:2016-09-02 20:27:06

标签: qml qtquick2

我理解"宽度"必须隐式设置属性才能使elide生效。但是,我在布局中有一个Text元素。我希望在文本太长时截断文本。如果在GridLayout中的文本类型中如何使用elide

import QtQuick 2.5
import QtQuick.Layouts 1.1


Rectangle {
    width: 100
    height: 20

    GridLayout {
        clip: true
        anchors.fill: parent

        rows: 1

        Text{
           text: "veryverylooooooonnnnnnnnnnnggggggggggggggtext"
           width: 50

           elide: Text.ElideRight
        }

    }
}

1 个答案:

答案 0 :(得分:6)

width: 50更改为Layout.preferredWidth: 50

import QtQuick 2.5
import QtQuick.Layouts 1.1
Rectangle {
    width: 100
    height: 20
    GridLayout {
        clip: true
        anchors.fill: parent
        rows: 1
        Text {
           text: "veryverylooooooonnnnnnnnnnnggggggggggggggtext"
           Layout.preferredWidth: 50
           elide: Text.ElideRight
        }
    }
}

结果: enter image description here