Auf dieser Seite

FlexboxLayout QML Type

Das QML-Konstrukt „FlexboxLayout“ stellt ein Flex-Layout für die Schnellzugriffselemente bereit. Mehr...

Import Statement: import QtQuick.Layouts
Since: Qt 6.10
Inherits:

Item

Status: Technology preview

Dieser Typ befindet sich in der Technologievorschau und kann sich noch ändern.

Eigenschaften

Zugehörige Eigenschaften

Ausführliche Beschreibung

Das FlexboxLayout ermöglicht eine flexible Anordnung der Quick-Elemente, ähnlich wie beim CSS Flexible Box Layout. Intern nutzt Qt FlexboxLayout die Yoga-Engine, um die Geometrie der Flex-Elemente abzuleiten. Die Yoga-Bibliothek ist eine Teilmenge des CSS Flexible Box Layouts. Daher kann das FlexboxLayout auf die Funktionen beschränkt sein, die von der Yoga-Bibliothek unterstützt werden.

Hinweis: Das FlexboxLayout orientiert sich hinsichtlich seiner Funktionen an der Version 2.0 der Yoga-Bibliothek.

Die Elemente innerhalb des FlexboxLayouts können über die vorhandenen Layout-Eigenschaften mit bevorzugten, minimalen und maximalen Größen konfiguriert werden. Wenn beispielsweise ein Element innerhalb des FlexboxLayouts gestreckt werden soll, kann die Layout-Eigenschaft „ Layout.fillWidth “ oder „ Layout.fillHeight “ festgelegt werden.

Elemente in einem „FlexboxLayout“ unterstützen folgende angehängte Eigenschaften:

Weitere Informationen zu den angehängten Eigenschaften finden Sie hier.

Um diesen Typ effizienter nutzen zu können, empfiehlt es sich, die allgemeinen Funktionsweisen des Moduls „ Qt Quick Layouts “ zu verstehen. Weitere Informationen finden Sie unter „Qt Quick Layouts -Übersicht “.

Anwendungsbeispiel

Der folgende Codeausschnitt zeigt ein minimalistisches Beispiel für die Verwendung von QML FlexboxLayout, um rechteckige Elemente flexibler anzuordnen

FlexboxLayout {
    id: flexLayout
    anchors.fill: parent
    wrap: FlexboxLayout.Wrap
    direction: FlexboxLayout.Row
    justifyContent: FlexboxLayout.JustifySpaceAround
    Rectangle {
        color: 'teal'
        implicitWidth: 200
        implicitHeight: 200
    }
    Rectangle {
        color: 'plum'
        implicitWidth: 200
        implicitHeight: 200
    }
    Rectangle {
        color: 'olive'
        implicitWidth: 200
        implicitHeight: 200
    }
    Rectangle {
        color: 'beige'
        implicitWidth: 200
        implicitHeight: 200
    }
    Rectangle {
        color: 'darkseagreen'
        implicitWidth: 200
        implicitHeight: 200
    }
}

Hinweis: Diese API gilt als Tech-Preview und kann sich in zukünftigen Versionen von Qt ändern oder entfernt werden.

Siehe auch „ ColumnLayout“ , „ GridLayout “, „ RowLayout “, „ StackView “ und „Qt Quick Layouts – Übersicht“.

Dokumentation zu den Eigenschaften

alignContent : enumeration

Diese Eigenschaft legt die Verteilung der Flex-Zeilen entlang der Querachse des Flexbox-Layouts fest.

Mögliche Werte:

ConstantBeschreibung
FlexboxLayout.AlignStartFlex-Zeilen werden am Anfang des Flexbox-Layouts ausgerichtet.
FlexboxLayout.AlignCenterFlex-Linien werden entlang der Mitte des Flexbox-Layouts ausgerichtet.
FlexboxLayout.AlignEndFlex-Zeilen werden am Ende des Flexbox-Layouts ausgerichtet.
FlexboxLayout.AlignStretch(Standard) Flex-Zeilen werden entsprechend der Höhe des Flexbox-Layouts gestreckt.
FlexboxLayout.AlignSpaceBetweenDie Abstände sind gleichmäßig zwischen den Zeilen verteilt, und es gibt keinen Abstand am Rand des Flexbox-Layouts.
FlexboxLayout.AlignSpaceAroundDie Abstände sind gleichmäßig zwischen den Zeilen verteilt, und an den Rändern des Flex-Box-Layouts ist ein Abstand in halber Größe vorhanden.
FlexboxLayout.AlignSpaceEvenlyDie Abstände werden gleichmäßig zwischen den Zeilen und den Rändern des Flexbox-Layouts verteilt. Wird in Qt 6.10 nicht unterstützt.

Der Standardwert ist „ FlexboxLayout.AlignStart “.

alignItems : enumeration

Diese Eigenschaft legt die Ausrichtung der Elemente innerhalb der Flex-Zeilen des Flexbox-Layouts fest und richtet diese entlang der Querachse aus (die orthogonal zur Hauptachse verläuft, wie durch die Eigenschaft „ direction “ definiert). Diese Eigenschaft kann durch die Elemente innerhalb des Flexbox-Layouts über die angehängte Eigenschaft „ FlexboxLayout.alignSelf “ überschrieben werden.

Mögliche Werte:

KonstanteBeschreibung
FlexboxLayout.AlignStart(Standard) Elemente werden am Anfang der Querachse des Flexbox-Layouts ausgerichtet.
FlexboxLayout.AlignCenterElemente werden entlang der Mitte der Querachse des Flexbox-Layouts ausgerichtet.
FlexboxLayout.AlignEndElemente werden am Ende der Querachse des Flexbox-Layouts ausgerichtet.

Hinweis: Die in den möglichen Werten genannten Ausrichtungen gelten nur für die Eigenschaft „alignItems“.

Der Standardwert lautet „ FlexboxLayout.AlignStart “.

columnGap : real

Diese Eigenschaft gibt den Platz an, der entlang der Inline-Achse auf den „ FlexboxLayout “ angewendet werden soll. Durch das Festlegen dieser Eigenschaft wird der Wert von „ gap “ für die Inline-Achse überschrieben.

Der Standardwert lautet „ 0 “.

direction : enumeration

Diese Eigenschaft legt die Ausrichtungsrichtung der Elemente innerhalb des Flexbox-Layouts fest und definiert die Hauptachse.

Mögliche Werte:

KonstanteBeschreibung
FlexboxLayout.Row(Standard) Elemente werden von links nach rechts angeordnet.
FlexboxLayout.RowReversedElemente werden von rechts nach links angeordnet.
FlexboxLayout.ColumnDie Elemente werden von oben nach unten angeordnet.
FlexboxLayout.ColumnReversedElemente werden von unten nach oben angeordnet.

Der Standardwert lautet „ FlexboxLayout.Row “.

gap : real

Diese Eigenschaft gibt den Platz an, der sowohl entlang der Inline-Achse als auch entlang der Block-Achse auf das Element „ FlexboxLayout “ angewendet werden soll.

Der Standardwert ist „ 0 “.

justifyContent : enumeration

Diese Eigenschaft legt die Verteilung der Elemente entlang der Hauptachse des Flexbox-Layouts fest.

Mögliche Werte:

ConstantBeschreibung
FlexboxLayout.JustifyStart(Standard) Die Elemente werden am Anfang des Flexbox-Layouts ausgerichtet.
FlexboxLayout.JustifyCenterElemente werden entlang der Mitte des Flexbox-Layouts ausgerichtet.
FlexboxLayout.JustifyEndDie Elemente werden am Ende des Flexbox-Layouts ausgerichtet.
FlexboxLayout.JustifySpaceBetweenDie Abstände werden gleichmäßig auf die Elemente verteilt, und an den Rändern des Flexbox-Layouts bleibt kein Abstand.
FlexboxLayout.JustifySpaceAroundDie Abstände sind gleichmäßig auf die Elemente verteilt, und an den Rändern des Flexbox-Layouts ist jeweils ein Abstand in halber Größe vorhanden.
FlexboxLayout.JustiftSpaceEvenlyDie Abstände werden gleichmäßig zwischen den Elementen und den Rändern des Flexbox-Layouts verteilt.

Der Standardwert ist „ FlexboxLayout.JustifyStart “.

rowGap : real

Diese Eigenschaft gibt den Abstand an, der entlang der Blockachse auf die „ FlexboxLayout “ angewendet werden soll. Durch das Festlegen dieser Eigenschaft wird der Wert von „ gap “ für die Blockachse überschrieben.

Der Standardwert ist „ 0 “.

wrap : enumeration

Diese Eigenschaft legt fest, ob die Elemente innerhalb des Flexbox-Layouts umgebrochen werden können oder nicht. Dies geschieht, wenn die untergeordneten Elemente die Größe des Flexbox-Layouts überschreiten. Werden die Elemente umgebrochen, werden sie je nach dem beschriebenen Überlaufzustand in mehrere Zeilen angeordnet. Jede Zeile nimmt die maximale Größe des Elements entlang der Querachse ein.

Mögliche Werte:

KonstanteBeschreibung
FlexboxLayout.WrapDie Elemente werden innerhalb des Flexbox-Layouts in mehrere Zeilen umgebrochen.
FlexboxLayout.NoWrap(Standard) Elemente werden nicht umgebrochen und innerhalb des Flexbox-Layouts in einer einzigen Zeile angeordnet.
FlexboxLayout.WrapReverseElemente werden im Flexbox-Layout in umgekehrter Richtung auf mehrere Zeilen umgebrochen.

Der Standardwert ist „ FlexboxLayout.NoWrap “.

Dokumentation zur zugehörigen Eigenschaft

FlexboxLayout.alignSelf : enumeration [attached]

Diese zugewiesene Eigenschaft ermöglicht es, dieses Element im Flexbox-Layout entlang der Querachse auszurichten, und überschreibt die Flexbox-Layout-Eigenschaft „ alignItems “ des übergeordneten Elements.

Standardmäßig erbt das untergeordnete Element die Ausrichtung vom übergeordneten Element und kann die Flexbox-Layout-Eigenschaft „ alignItems “ des übergeordneten Elements mit den Werten „ FlexboxLayout.AlignStart “, „ FlexboxLayout.AlignCenter “ und „ FlexboxLayout.AlignEnd “ überschreiben.

Der Standardwert ist ` FlexboxLayout.AlignAuto`.

© 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.