私の場合はQtQuick.Layouts
のRow/ColumnLayoutを使って区切ったcellの中にテキストを入れようとした時に起こった
main.qml
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Layouts 1.1
ApplicationWindow {
title: qsTr("Hello World")
width: 640
height: 480
property string loremIpsum:
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor "+
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor "+
"incididunt ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud "+
"exercitation ullamco laboris nisi ut aliquip ex ea commodo cosnsequat. ";
RowLayout {
anchors.fill: parent
Rectangle {
Layout.preferredWidth: parent.width / 4
Layout.fillHeight: true
color: "red"
}
Label {
text: loremIpsum
wrapMode: Text.Wrap
}
Rectangle {
Layout.preferredWidth: parent.width / 3
Layout.fillHeight: true
color: "blue"
}
}
}
Text/Labelは何かしらの方法でwidth
を設定してやらないとはみ出すようだ
上の場合はLabel
にLayout.fillWidth: true
を追加するとうまくいく
main.qml
Label {
Layout.fillWidth: true
text: loremIpsum
wrapMode: Text.Wrap
}
wordwrapできずにはみ出すときはwidth
かそれに相当するプロパティが設定されてるか確認するといいと思う