Layout类型的对象附加到布局的子对象,以提供关于项目的布局特定信息。附加对象的属性会影响布局如何排列项目。
本文: https://www.lovejia.win/blog/article/Layout.html
参考原文:http://doc.qt.io/qt-5/qml-qtquick-layouts-layout.html
参考译文:http://blog.csdn.net/vampire_armand/article/details/39529915
属性说明
Layout.alignment : Qt.Alignment
这个属性允许我们指定组件在占据的单元中的对齐方式。
默认值是0,一位着组件将垂直居中和水平居左。Qt.AlignVCenter | Qt.AlignLeft。
有效的对齐值是下面标志的联合:
Qt::AlignLeft
Qt::AlignHCenter
Qt::AlignRight
Qt::AlignTop
Qt::AlignVCenter
Qt::AlignBottom
Qt::AlignBaseline
Layout.bottomMargin:real
指定项目外部的底部边距。如果未设置该值,则将使用来自边距的值。
Layout.column:int
此属性允许您指定GridLayout中项目的列位置。
如果未设置行和此属性,则由布局向项目分配单元格。
默认值为0。
Layout.columnSpan:int
此属性允许您指定GridLayout中项目的列跨度。
默认值为1。
Layout.fillHeight:bool
如果这个属性是true,项目将尽可能高,同时尊重给定的约束。如果属性为false,项目将具有设置为首选高度的固定高度。默认值为false,除了布局本身,默认为true。
Layout.fillWidth:bool
如果这个属性是true,项目将尽可能宽,同时尊重给定的约束。如果属性为false,则项目将具有设置为首选宽度的固定宽度。默认值为false,除了布局本身,默认为true。
Layout.leftMargin:real
指定项目外的左边距。如果未设置该值,则将使用来自边距的值。
Layout.margins:real
将项目外的边距设置为全部具有相同的值。项目本身不评估自己的边距。决定是否要评估边距是父母的责任。
具体来说,边距仅由ColumnLayout,RowLayout,GridLayout和其他类似布局的容器(例如SplitView)进行评估,其中项目的有效单元格大小随着边距增加而增加。
因此,如果具有边距的项目是另一个的子项Item,则其位置,大小和隐式大小将保持不变。
与调整相结合的利润率将调整的项目,包括其利润率。例如,具有上边距1和下边距的垂直居中项9将导致单元格内的项有效对齐位于中心上方4个像素。
默认值为0。
Layout.maximumHeight:real
默认值是项目的隐式最大高度。
如果项目是布局,则隐式最大高度将是布局可以具有的最大高度,其中没有任何项目超过其最大高度。任何其他项的隐式最大高度为Number.POSITIVE_INFINITY。
将此值设置为-1将高度重置回隐含的最大高度。
Layout.maximumWidth:real
此属性保存布局中项目的最大宽度。默认值是项目的隐式最大宽度。
如果项目是布局,则隐式最大宽度将是布局可以具有的最大宽度,而没有任何项目超出其最大宽度。任何其他项的隐式最大宽度为Number.POSITIVE_INFINITY。
将此值设置为-1将宽度重置为其隐式最大宽度。
Layout.minimumHeight:real
此属性保存布局中项目的最小高度。默认值是项目的隐式最小高度。
如果项目是布局,则隐含最小高度将是布局可以具有的最小高度,而没有任何项目收缩到其最小高度以下。任何其他项的隐式最小高度为0。
将此值设置为-1将会将高度重置回其隐含的最小高度。
Layout.minimumWidth:real
此属性保留布局中项目的最小宽度。默认值是项目的隐含最小宽度。
如果项目是布局,则隐含最小宽度将是布局可以具有的最小宽度,而没有任何项目缩小到其最小宽度以下。任何其他项的隐含最小宽度为0。
将此值设置为-1将会将宽度重置为其隐含的最小宽度。
Layout.preferredHeight:real
此属性保存布局中项目的首选高度。如果首选高度-1被忽略,布局将使用implicitHeight。默认值为-1。
Layout.preferredWidth:real
此属性保存布局中项目的首选宽度。如果首选宽度是-1它将被忽略,并且布局将使用implicitWidth。默认值为-1。
Layout.rightMargin:real
指定项目外的右边距。如果未设置该值,则将使用来自边距的值。
Layout.row:int
此属性允许您指定GridLayout中项目的行位置。
如果未设置列和此属性,则由布局向单元分配项。
默认值为0。
Layout.rowSpan:int
此属性允许您指定GridLayout中项目的行跨度。
默认值为1。
Layout.topMargin:real
指定项目外的上边距。如果未设置该值,则将使用来自边距的值。
功能简述
Layout类型的对象附加到布局的子对象,以提供关于项目的布局特定信息。附加对象的属性会影响布局如何排列项目。
当布局调整大小时,项目可能会增长或缩小。因此,项目具有最小大小,优选大小和最大大小。
如果未在项目上显式指定最小大小,则将大小设置为0。如果尚未在项目上显式指定最大大小,则大小设置为Number.POSITIVE_INFINITY。
对于布局,隐式最小和最大大小取决于布局的内容。
fillWidth和fillHeight属性可以是true或false。如果是false,项目的大小将固定为其首选大小。否则,它将在布局调整大小时在其最小和最大大小之间增长或缩小。
注意:不建议与布局中项目的x,y,width或height属性绑定,因为这将与Layout的目标冲突,还可能导致绑定循环。