Auf dieser Seite

GridLayout QML Type

Bietet eine Möglichkeit, Elemente dynamisch in einem Raster anzuordnen. Mehr...

Import Statement: import QtQuick.Layouts
Inherits:

Item

Eigenschaften

Ausführliche Beschreibung

Um diesen Typ effizienter nutzen zu können, sollten Sie sich mit dem allgemeinen Funktionsprinzip des Moduls „ Qt Quick Layouts “ vertraut machen. Weitere Informationen finden Sie unter „Qt Quick Layouts – Überblick “.

Wird die Größe des GridLayouts geändert, werden alle Elemente im Layout neu angeordnet. Dies ähnelt dem widgetbasierten „ QGridLayout “. Alle sichtbaren untergeordneten Elemente des GridLayout-Elements gehören zum Layout. Wenn Sie ein Layout mit nur einer Zeile oder einer Spalte wünschen, können Sie das „ RowLayout “ oder „ ColumnLayout “ verwenden. Diese bieten eine etwas komfortablere API und verbessern die Lesbarkeit.

Standardmäßig werden Elemente gemäß der Eigenschaft ` flow ` angeordnet. Der Standardwert der Eigenschaft ` flow ` ist ` GridLayout.LeftToRight`.

Wenn die Eigenschaft „ columns “ angegeben wird, wird sie als maximale Anzahl von Spalten behandelt, die das Layout haben kann, bevor die automatische Positionierung an den Anfang der nächsten Zeile zurückkehrt. Die Eigenschaft „ columns “ wird nur verwendet, wenn „ flow “ auf „ GridLayout.LeftToRight “ gesetzt ist.

In einem Raster angeordneter Text: Drei, Wörter, in, einer, Reihe

GridLayout {
    id: grid
    columns: 3

    Text { text: "Three"; font.bold: true; }
    Text { text: "words"; color: "red" }
    Text { text: "in"; font.underline: true }
    Text { text: "a"; font.pixelSize: 20 }
    Text { text: "row"; font.strikeout: true }
}

Die Eigenschaft „ rows “ funktioniert auf ähnliche Weise, allerdings werden die Elemente dabei vertikal automatisch positioniert. Die Eigenschaft „ rows “ wird nur verwendet, wenn „ flow “ auf „ GridLayout.TopToBottom “ gesetzt ist.

Sie können festlegen, welche Zelle ein Element einnehmen soll, indem Sie die Eigenschaften „ Layout.row “ und „ Layout.column “ festlegen. Sie können außerdem die Zeilen- oder Spaltenausdehnung festlegen, indem Sie die Eigenschaften „ Layout.rowSpan “ bzw. „ Layout.columnSpan “ festlegen.

Elemente in einem „GridLayout“ unterstützen die folgenden angehängten Eigenschaften:

Weitere Informationen zu angehängten Eigenschaften finden Sie hier.

Siehe auch „ RowLayout“ , „ ColumnLayout “, „ StackLayout “, „ Grid “ und „Qt Quick Layouts “ – Übersicht.

Dokumentation zu Eigenschaften

columnSpacing : real

Diese Eigenschaft legt den Abstand zwischen den einzelnen Spalten fest. Der Standardwert lautet „ 5 “.

columns : int

Diese Eigenschaft legt die Spaltenbegrenzung für positionierte Elemente fest, wenn „ flow “ auf „ GridLayout.LeftToRight “ gesetzt ist. Standardmäßig gibt es keine Begrenzung.

flow : enumeration

Diese Eigenschaft legt die Fließrichtung von Elementen fest, für die keine explizite Zellenposition festgelegt wurde. Sie wird zusammen mit den Eigenschaften „ columns “ oder „ rows “ verwendet, die festlegen, wann der Fluss jeweils auf die nächste Zeile bzw. Spalte zurückgesetzt wird.

Mögliche Werte sind:

ConstantBeschreibung
GridLayout.LeftToRight(Standard) Elemente werden nebeneinander positioniert und dann in die nächste Zeile umgebrochen.
GridLayout.TopToBottomElemente werden von oben nach unten nebeneinander positioniert und anschließend in die nächste Spalte umgebrochen.

Siehe auch rows und columns.

layoutDirection : enumeration [since QtQuick.Layouts 1.1]

Diese Eigenschaft legt die Ausrichtungsrichtung des Rasterlayouts fest – sie bestimmt, ob Elemente von links nach rechts oder von rechts nach links angeordnet werden. Wenn „ Qt.RightToLeft “ angegeben ist, werden linksbündige Elemente rechtsbündig und rechtsbündige Elemente linksbündig ausgerichtet.

Mögliche Werte:

KonstanteBeschreibung
Qt.LeftToRight(Standard) Elemente werden von links nach rechts angeordnet.
Qt.RightToLeftElemente werden von rechts nach links angeordnet.

Diese Eigenschaft wurde in QtQuick.Layouts 1.1 eingeführt.

Siehe auch RowLayout::layoutDirection und ColumnLayout::layoutDirection.

rowSpacing : real

Diese Eigenschaft legt den Abstand zwischen den einzelnen Zeilen fest. Der Standardwert lautet „ 5 “.

rows : int

Diese Eigenschaft legt die Zeilenbegrenzung für positionierte Elemente fest, wenn „ flow “ auf „ GridLayout.TopToBottom “ gesetzt ist. Standardmäßig gibt es keine Begrenzung.

uniformCellHeights : bool [since QtQuick.Layouts 6.6]

Wenn diese Eigenschaft auf „ true “ gesetzt ist, sorgt das Layout dafür, dass alle Zellen eine einheitliche Höhe haben. Das Layout versucht in diesem Modus, die Vorgaben unter Layout.minimumHeight, Layout.preferredHeight und Layout.maximumHeight einzuhalten, muss jedoch möglicherweise Kompromisse eingehen, um die Anforderungen aller Elemente zu erfüllen.

Der Standardwert ist „ false “.

Diese Eigenschaft wurde in QtQuick.Layouts 6.6 eingeführt.

Siehe auch GridLayout::uniformCellWidths, RowLayout::uniformCellSizes und ColumnLayout::uniformCellSizes.

uniformCellWidths : bool [since QtQuick.Layouts 6.6]

Wenn diese Eigenschaft auf „ true “ gesetzt ist, sorgt das Layout dafür, dass alle Zellen eine einheitliche Breite haben. Das Layout versucht in diesem Modus, die Vorgaben unter Layout.minimumWidth, Layout.preferredWidth und Layout.maximumWidth einzuhalten, muss jedoch möglicherweise Kompromisse eingehen, um die Anforderungen aller Elemente zu erfüllen.

Der Standardwert ist „ false “.

Diese Eigenschaft wurde in QtQuick.Layouts 6.6 eingeführt.

Siehe auch GridLayout::uniformCellHeights, RowLayout::uniformCellSizes und ColumnLayout::uniformCellSizes.

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