Column QML Type
Ordnet seine untergeordneten Elemente in einer Spalte an. Mehr...
| Import Statement: | import QtQuick |
| Inherits: |
Eigenschaften
- add : Transition
- bottomPadding : real
- leftPadding : real
- move : Transition
- padding : real
- populate : Transition
- rightPadding : real
- spacing : real
- topPadding : real
Signale
Methoden
- void forceLayout()
Ausführliche Beschreibung
„Column“ ist ein Typ, der seine untergeordneten Elemente in einer einzigen Spalte anordnet. Er bietet eine bequeme Möglichkeit, eine Reihe von Elementen vertikal anzuordnen, ohne Anker zu verwenden.
Nachfolgend sehen Sie eine „Column“, die drei Rechtecke unterschiedlicher Größe enthält:
Column {
spacing: 2
Rectangle { color: "red"; width: 50; height: 50 }
Rectangle { color: "green"; width: 20; height: 50 }
Rectangle { color: "blue"; width: 50; height: 20 }
}Die „Column“ ordnet diese Elemente automatisch vertikal an, und zwar wie folgt:

Wenn ein Element innerhalb einer „Column“ nicht „ visible “ ist oder eine Breite oder Höhe von 0 hat, wird das Element nicht angeordnet und ist innerhalb der Spalte nicht sichtbar. Da eine Spalte ihre untergeordneten Elemente automatisch vertikal anordnet, sollte ein untergeordnetes Element innerhalb einer Spalte zudem weder seine Position mit „ y “ festlegen noch sich mithilfe der Anker „ top “, „ bottom “, „ anchors.verticalCenter “, „ fill “ oder „ centerIn “ vertikal verankern. Wenn Sie diese Aktionen durchführen müssen, sollten Sie in Erwägung ziehen, die Elemente ohne Verwendung einer Spalte zu positionieren.
Beachten Sie, dass Elemente in einer Spalte die angehängte Eigenschaft „ Positioner “ verwenden können, um auf weitere Informationen zu ihrer Position innerhalb der Spalte zuzugreifen.
Weitere Informationen zur Verwendung von „Column“ und anderen verwandten Positionierungstypen finden Sie unter „Elementpositionierer“.
Verwendung von Übergängen
Eine Spalte animiert Elemente mithilfe spezifischer Übergänge, wenn Elemente zu einer Spalte hinzugefügt oder innerhalb einer Spalte verschoben werden.
Beispielsweise legt die folgende Spalte die Eigenschaft „ move “ auf eine bestimmte „ Transition “ fest:
Column {
spacing: 2
Rectangle { color: "red"; width: 50; height: 50 }
Rectangle { id: greenRect; color: "green"; width: 20; height: 50 }
Rectangle { color: "blue"; width: 50; height: 20 }
move: Transition {
NumberAnimation { properties: "x,y"; duration: 1000 }
}
focus: true
Keys.onSpacePressed: greenRect.visible = !greenRect.visible
}Wenn die Leertaste gedrückt wird, wird der Wert von „ visible “ des grünen „ Rectangle “ umgeschaltet. Während es erscheint und verschwindet, bewegt sich das blaue „ Rectangle “ innerhalb der Spalte, und der Übergang „ move “ wird automatisch auf das blaue „ Rectangle “ angewendet:
Siehe auch „ Row“ , „ Grid “, „ Flow “, „ Positioner “, „ ColumnLayout “ und „Qt Quick “ – Beispiele – Positionierer.
Dokumentation zu den Eigenschaften
add : Transition
Diese Eigenschaft enthält den Übergang, der für Elemente ausgeführt werden soll, die diesem Positionierer hinzugefügt werden. Für einen Positionierer gilt dies für:
- Elemente, die nach der Erstellung des Positioners als untergeordnete Elemente des Positioners erstellt oder neu zugeordnet werden
- Unterelemente, deren Eigenschaft „ Item::visible “ von „false“ auf „true“ geändert wird und die somit nun sichtbar sind
Der Übergang kann die Eigenschaft „ ViewTransition “ nutzen, um auf weitere Details des hinzugefügten Elements zuzugreifen. Weitere Details und Beispiele zur Verwendung dieser Übergänge finden Sie in der Dokumentation zu „ ViewTransition “.
Hinweis: Dieser Übergang wird nicht auf Elemente angewendet, die zum Zeitpunkt der Erstellung des Positioners bereits Teil davon sind. In diesem Fall wird stattdessen der Übergang „ populate “ angewendet.
Siehe auch populate, ViewTransition und Qt Quick Beispiele – Positioner.
Diese Eigenschaften legen den Abstand um den Inhalt herum fest.
move : Transition
Diese Eigenschaft legt fest, dass der Übergang für Elemente ausgeführt wird, die sich innerhalb des Positioners verschoben haben. Für einen Positioner gilt dies für:
- Untergeordnete Elemente, die sich verschieben, wenn sie durch das Hinzufügen, Entfernen oder Neuanordnen anderer Elemente im Positionierer verschoben werden
- Untergeordnete Elemente, die aufgrund der Größenänderung anderer Elemente im Positionierer neu positioniert werden
Der Übergang kann die Eigenschaft „ ViewTransition “ verwenden, um auf weitere Details zu dem Element zuzugreifen, das verschoben wird. Beachten Sie jedoch, dass bei diesem „move“-Übergang die Listen „ ViewTransition.targetIndexes“ und „ ViewTransition.targetItems“ nur gesetzt werden, wenn dieser Übergang durch das Hinzufügen anderer Elemente im Positionierer ausgelöst wird; in anderen Fällen sind diese Listen leer. Weitere Details und Beispiele zur Verwendung dieser Übergänge finden Sie in der Dokumentation unter ViewTransition.
Siehe auch add, populate, ViewTransition und Qt Quick Beispiele – Positionierer.
populate : Transition
Diese Eigenschaft enthält den Übergang, der für Elemente ausgeführt werden soll, die zum Zeitpunkt der Erstellung Teil dieses Positioners sind. Der Übergang wird ausgeführt, wenn der Positioner zum ersten Mal erstellt wird.
Der Übergang kann die Eigenschaft „ ViewTransition “ verwenden, um auf weitere Details zu dem Element zuzugreifen, das hinzugefügt wird. Weitere Details und Beispiele zur Verwendung dieser Übergänge finden Sie in der Dokumentation unter ViewTransition.
Siehe auch „ add“ , „ ViewTransition “ und „Qt Quick: Beispiele – Positioner“.
spacing : real
Der Abstand ist der in Pixeln angegebene Freiraum zwischen benachbarten Elementen. Der Standardabstand beträgt 0.
Siehe auch Grid::spacing.
Signal-Dokumentation
positioningComplete()
Dieses Signal wird ausgesendet, wenn die Positionierung abgeschlossen ist.
Hinweis: Der zugehörige Handler ist onPositioningComplete.
Methodendokumentation
void forceLayout()
„Column“ positioniert seine untergeordneten Elemente in der Regel einmal pro Frame. Das bedeutet, dass sich innerhalb von Skriptblöcken die zugrunde liegenden untergeordneten Elemente möglicherweise geändert haben, „Column“ jedoch noch nicht entsprechend aktualisiert wurde.
Diese Methode zwingt die „Column“, sofort auf alle ausstehenden Änderungen an ihren untergeordneten Elementen zu reagieren.
Hinweis: Methoden sollten im Allgemeinen erst aufgerufen werden, nachdem die Komponente ihre Ausführung abgeschlossen hat.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.