在 QML 文本元素中启用 "elide" 属性,但在 GridLayout 中
Enabling "elide" property in the QML Text element, but in a GridLayout
我了解 "width" 属性 必须隐式设置才能使 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
}
}
}
将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
}
}
}
结果:
我了解 "width" 属性 必须隐式设置才能使 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
}
}
}
将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
}
}
}
结果: