Row QML Element

The Row item arranges its children horizontally. 更多...

Since: Qt 4.7
继承: Item

特性

详细描述

The Row item positions its child items so that they are horizontally aligned and not overlapping.

使用 spacing to set the spacing between items in a Row, and use the add and move properties to set the transitions that should be applied when items are added to, removed from, or re-positioned within the Row.

Using QML Positioner and Repeater Items for more details about this item and other related items.

用法范例

The following example lays out differently shaped rectangles using a Row.

import QtQuick 1.0
Row {
    spacing: 2
    Rectangle { color: "red"; width: 50; height: 50 }
    Rectangle { color: "green"; width: 20; height: 50 }
    Rectangle { color: "blue"; width: 50; height: 20 }
}
					
					

Using Transitions

Transitions can be used to animate items that are added to, moved within, or removed from a Grid item. The add and move properties can be set to the transitions that will be applied when items are added to, removed from, or re-positioned within a Row item.

局限性

Note that the positioner assumes that the x and y positions of its children will not change. If you manually change the x or y properties in script, bind the x or y properties, use anchors on a child of a positioner, or have the width of a child depend on the position of a child, then the positioner may exhibit strange behaviour. If you need to perform any of these actions, consider positioning the items without the use of a Row.

Items with a width or height of 0 will not be positioned.

另请参阅 Column , Grid , Flow ,和 Positioners example .

特性文档编制

add : Transition

This property holds the transition to be applied when adding an item to the positioner. The transition will only be applied to the added item(s). Positioner transitions will only affect the position (x, y) of items.

For a positioner, adding an item can mean that either the object has been created or reparented, and thus is now a child or the positioner, or that the object has had its opacity increased from zero, and thus is now visible.

另请参阅 move .


layoutDirection : enumeration

This property holds the layoutDirection of the row.

可能的值:

  • Qt.LeftToRight (default) - Items are laid out from left to right. If the width of the row is explicitly set, the left anchor remains to the left of the row.
  • Qt.RightToLeft - Items are laid out from right to left. If the width of the row is explicitly set, the right anchor remains to the right of the row.

When using the attached property LayoutMirroring::enabled for locale layouts, the visual layout direction of the row positioner will be mirrored. However, the property layoutDirection will remain unchanged. You can use the property LayoutMirroring::enabled to determine whether the direction has been mirrored.

This QML property was introduced in QtQuick 1.1.

另请参阅 Grid::layoutDirection , Flow::layoutDirection , Layout directions example ,和 LayoutMirroring .


move : Transition

This property holds the transition to be applied when moving an item within the positioner. Positioner transitions will only affect the position (x, y) of items.

This transition can be performed when other items are added or removed from the positioner, or when items resize themselves.

Row {
    id: positioner
    move: Transition {
        NumberAnimation {
            properties: "x"
            ease: "easeOutBounce"
        }
    }
}
								

另请参阅 add and Positioners example .


spacing : int

The spacing is the amount in pixels left empty between adjacent items. The default spacing is 0.

另请参阅 Grid::spacing .