Layout.fillWidth和Layout.fillHeight属性
If this property is true, the item will be as wide as possible while respecting the given constraints. If the property is false, the item will have a fixed width set to the preferred width. The default is false, except for layouts themselves, which default to true.
minimumWidth(minimumHeight):缩小窗口后,该组件的宽度(高度)不会小于此宽度
maximumWidth(maximumHeight):放大窗口后,该组件的宽度(高度)不会大于此宽度
eg:
import QtQuick 2.5
import QtQuick.Layouts 1.2
RowLayout {
id: layout
anchors.fill: parent
spacing: 6
Rectangle {
color: 'azure'
Layout.fillWidth: true
Layout.minimumWidth: 50
Layout.preferredWidth: 100
Layout.maximumWidth: 300
Layout.minimumHeight: 150
Text {
anchors.centerIn: parent
text: parent.width + 'x' + parent.height
}
}
Rectangle {
color: 'plum'
Layout.fillWidth: true
Layout.minimumWidth: 100
Layout.preferredWidth: 200
Layout.preferredHeight: 100
Text {
anchors.centerIn: parent
text: parent.width + 'x' + parent.height
}
}
}
参考:
Qt Quick Layouts Overview
Layouts Eample
import QtQuick 2.5
import QtQuick.Controls 1.3
import QtQuick.Layouts 1.2
ApplicationWindow {
visible: true
title: "Basic layouts"
ColumnLayout {
id: mainLayout
anchors.fill: parent
anchors.margins: 11
GroupBox {
title: "Row layout"
Layout.fillWidth: true
RowLayout {
anchors.fill: parent
TextField {
placeholderText: "This wants to grow horizontally"
Layout.fillWidth: true
}
Button {
text: "Button"
}
}
}
GroupBox {
title: "Grid layout"
Layout.fillWidth: true
GridLayout {
anchors.fill: parent
rows: 3
flow: GridLayout.TopToBottom
Label {text: "Line1"}
Label {text: "Line2"}
Label {text: "Line3"}
TextField {}
TextField {}
TextField {}
TextArea {
text: "fill"
Layout.rowSpan: 3
Layout.fillHeight: true
Layout.fillWidth: true
}
}
}
TextArea {
text: "This fills the whole cell"
Layout.minimumHeight: 30
Layout.fillHeight: true
Layout.fillWidth: true
}
}
}
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com