Layout QML Type
GridLayout 、RowLayout 、またはColumnLayout にプッシュされたアイテムに対して、添付プロパティを提供します。詳細...
| Import Statement: | import QtQuick.Layouts |
アタッチドプロパティ
- alignment : Qt.Alignment
- bottomMargin : real
(since QtQuick.Layouts 1.2) - column : int
- columnSpan : int
- fillHeight : bool
- fillWidth : bool
- horizontalStretchFactor : int
(since Qt 6.5) - leftMargin : real
(since QtQuick.Layouts 1.2) - margins : real
(since QtQuick.Layouts 1.2) - maximumHeight : real
- maximumWidth : real
- minimumHeight : real
- minimumWidth : real
- preferredHeight : real
- preferredWidth : real
- rightMargin : real
(since QtQuick.Layouts 1.2) - row : int
- rowSpan : int
- topMargin : real
(since QtQuick.Layouts 1.2) - useDefaultSizePolicy : enumeration
(since 6.8) - verticalStretchFactor : int
(since Qt 6.5)
詳細な説明
Layout 型のオブジェクトは、レイアウトの子要素に添付され、そのアイテムに関するレイアウト固有の情報を提供します。添付されたオブジェクトのプロパティは、レイアウトがアイテムをどのように配置するかに影響を与えます。
たとえば、デフォルト値が適切でない場合は、minimumWidth 、preferredWidth 、およびmaximumWidth を指定できます。
レイアウトのサイズが変更されると、アイテムのサイズも拡大または縮小される場合があります。このため、アイテムにはminimum size 、preferred size 、およびmaximum size が設定されています。
アイテムに対して最小サイズが明示的に指定されていない場合、サイズは0 に設定されます。アイテムに対して最大サイズが明示的に指定されていない場合、サイズはNumber.POSITIVE_INFINITY に設定されます。
レイアウトの場合、暗黙の最小サイズおよび最大サイズは、レイアウトの内容によって異なります。
fillWidth およびfillHeight プロパティは、true またはfalse のいずれかになります。これらがfalse の場合、項目のサイズは推奨サイズに固定されます。それ以外の場合は、レイアウトのサイズ変更に伴い、最小サイズと最大サイズの範囲内で拡大または縮小します。fillWidth (またはfillHeight )がtrue に設定されている項目が複数ある場合、レイアウトは各項目の推奨サイズの比率に応じて、項目を拡大または縮小します。
レイアウトアルゴリズムの詳細については、「Qt Quick 」の「レイアウトの概要」も参照してください。
注: レイアウト内の項目の x、y、width、または height プロパティにバインドしないでください 。これは Layout の目的と矛盾するだけでなく、バインディングループを引き起こす可能性もあります。 width および height プロパティは、レイアウトエンジンが、minimum/preferred/maximum 添付プロパティから計算された項目の現在のサイズを格納するために使用され、項目のレイアウトが行われるたびに上書きされる可能性があります。項目の推奨サイズを指定するには、Layout.preferredWidth およびLayout.preferredHeight 、あるいはimplicitWidth およびimplicitHeight を使用してください。
GridLayout 、RowLayout 、およびColumnLayoutも参照してください 。
添付プロパティのドキュメント
Layout.alignment : Qt.Alignment [attached]
このプロパティを使用すると、項目が占有するセル内での配置を指定できます。
デフォルト値は `0` であり、これは `Qt.AlignVCenter | Qt.AlignLeft` を意味します。これらのデフォルト値は、水平フラグまたは垂直フラグのいずれかのみが指定された場合にも適用されます。水平フラグのみが指定された場合、デフォルトの垂直フラグは `Qt.AlignVCenter` となり、垂直フラグのみが指定された場合、デフォルトの水平フラグは `Qt.AlignLeft` となります。
有効な配置は、以下のフラグの組み合わせです:
- Qt::AlignLeft
- Qt::AlignHCenter
- Qt::AlignRight
- Qt::AlignTop
- Qt::AlignVCenter
- Qt::AlignBottom
- Qt::AlignBaseline
Layout.bottomMargin : real [attached, since QtQuick.Layouts 1.2]
アイテムの外側にある下マージンを指定します。値が設定されていない場合は、margins の値が使用されます。
このプロパティは、QtQuick.Layouts 1.2 で導入されました。
marginsも参照してください 。
Layout.column : int [attached]
このプロパティを使用すると、GridLayout 内の項目の列位置を指定できます。
row とこのプロパティの両方が設定されていない場合、そのアイテムにセルを割り当てるかどうかはレイアウトに委ねられます。
デフォルト値は `0` です。
「 row 」および「columnSpan 」も参照してください 。
Layout.columnSpan : int [attached]
このプロパティを使用すると、GridLayout 内の項目の列幅を指定できます。
デフォルト値は `1` です。
「 rowSpan 」および「column 」も参照してください 。
Layout.fillHeight : bool [attached]
このプロパティが「true 」の場合、指定された制約条件を満たしつつ、アイテムの高さは可能な限り高くなります。プロパティが「false 」の場合、アイテムの高さは「preferred」の高さに固定されます。デフォルト値は、アイテムの暗黙的な(組み込みの)サイズポリシーによって異なります。
注: デフォルトでは 、レイアウトにおけるこのプロパティの値は「true 」です。
「fillWidth」も参照してください 。
Layout.fillWidth : bool [attached]
このプロパティが `true` の場合、指定された制約の範囲内で、アイテムの幅は可能な限り広くなります。プロパティが `false` の場合、アイテムの幅は `preferred` の値に設定された固定幅になります。デフォルト値は、アイテムの暗黙的な(組み込みの)サイズポリシーによって異なります。
注: デフォルトでは 、レイアウトにおいてこのプロパティは `true ` です。
「fillHeight」も参照してください 。
Layout.horizontalStretchFactor : int [attached, since Qt 6.5]
このプロパティを使用すると、水平方向の伸縮倍率を指定できます。 デフォルトでは、直線レイアウトに配置された2つの同一のアイテムは同じサイズになりますが、1つ目のアイテムの伸縮係数が1で、2つ目のアイテムの伸縮係数が2の場合、1つ目のアイテムは利用可能なスペースの1/3を、2つ目のアイテムは利用可能なスペースの2/3を占めるよう調整されます。 なお、実際に利用可能なスペースの 1/3 と 2/3 に正確になるかどうかは、各アイテムのサイズヒントによって異なります。これは、例えば水平レイアウトが最小幅で表示される場合、そのすべての子アイテムも結果として最小幅になるためです。
同様に、水平レイアウトが推奨幅になっている場合は、すべての子アイテムも推奨幅になり、水平レイアウトが最大幅になっている場合は、すべての子アイテムも最大幅になります。この戦略は、個々のストレッチ係数が何であるかに関係なく適用されます。 この結果、ストレッチ係数は、preferredWidth からmaximumWidth の範囲内でのみ、子項目の拡大率を決定することになります。
デフォルト値は `-1` であり、これはストレッチ係数が適用されないことを意味します。
注:これには 、Layout::fillWidth が true に設定されている必要があります。
このプロパティは Qt 6.5 で導入されました。
「verticalStretchFactor」も参照してください 。
Layout.leftMargin : real [attached, since QtQuick.Layouts 1.2]
アイテムの外側の左マージンを指定します。値が設定されていない場合は、margins の値が使用されます。
このプロパティは、QtQuick.Layouts 1.2 で導入されました。
marginsも参照してください 。
Layout.margins : real [attached, since QtQuick.Layouts 1.2]
アイテムの外側の余白をすべて同じ値に設定します。アイテム自体は、自身の余白を計算しません。余白を計算するかどうかは、親要素が決定します。
具体的には、マージンが評価されるのは、ColumnLayout 、RowLayout 、GridLayout 、およびSplitView などのレイアウト機能を持つコンテナのみであり、これらのコンテナでは、マージンが増加するにつれて項目の実効セルサイズも増加します。
したがって、マージンが設定されたアイテムが別のItem の子要素である場合、その位置、サイズ、および暗黙のサイズは変更されません。
マージンと配置を組み合わせると、マージンを含めてアイテムが配置されます。たとえば、上マージンが1 、下マージンが9 の垂直方向に中央揃えされたアイテムの場合、セル内でのそのアイテムの実効配置は中央より 4 ピクセル上になります。
デフォルト値は0 です。
このプロパティは QtQuick.Layouts 1.2 で導入されました。
leftMargin 、topMargin 、rightMargin 、およびbottomMarginも参照してください 。
Layout.maximumHeight : real [attached]
デフォルト値は、そのアイテムの暗黙的な最大高さです。
アイテムがレイアウトである場合、暗黙の最大高さは、そのレイアウトに含まれるどのアイテムも最大高さを超えて拡大することなく、レイアウトが持つことのできる最大高さとなります。その他のアイテムの暗黙の最大高さは `Number.POSITIVE_INFINITY` です。
この値を `-1 ` に設定すると、高さは暗黙的な最大高さにリセットされます。
「 minimumHeight 」および「preferredHeight 」も参照してください 。
Layout.maximumWidth : real [attached]
このプロパティは、レイアウト内の項目の最大幅を指定します。デフォルト値は、その項目の暗黙の最大幅です。
アイテムがレイアウトである場合、暗黙の最大幅は、そのレイアウト内のどのアイテムも最大幅を超えて拡大することなく、レイアウトが持つことができる最大幅となります。その他のアイテムの暗黙の最大幅は、Number.POSITIVE_INFINITY です。
この値を `-1 ` に設定すると、幅は暗黙の最大幅にリセットされます。
「 minimumWidth 」および「preferredWidth 」も参照してください 。
Layout.minimumHeight : real [attached]
このプロパティは、レイアウト内のアイテムの最小高さを保持します。デフォルト値は、そのアイテムの暗黙的な最小高さです。
アイテムがレイアウトである場合、暗黙の最小高さは、そのレイアウトに含まれるどのアイテムも最小高さを下回って縮小することなく、レイアウトが持つことができる最小の高さとなります。その他のアイテムの暗黙の最小高さは、0 です。
この値を -1 に設定すると、高さは暗黙の最小高さにリセットされます。
「 preferredHeight 」および「maximumHeight 」も参照してください 。
Layout.minimumWidth : real [attached]
このプロパティは、レイアウト内の項目の最小幅を指定します。デフォルト値は、その項目の暗黙的な最小幅です。
アイテムがレイアウトである場合、暗黙の最小幅は、そのレイアウトに含まれるどのアイテムも最小幅を下回ることなく、レイアウトが持つことのできる最小幅となります。その他のアイテムの暗黙の最小幅は `0` です。
この値を -1 に設定すると、幅は暗黙の最小幅にリセットされます。
「 preferredWidth 」および「maximumWidth 」も参照してください 。
Layout.preferredHeight : real [attached]
このプロパティは、レイアウト内の項目の推奨高さを保持します。推奨高さが `-1 ` の場合、それは無視され、レイアウトでは代わりに `implicitHeight ` が使用されます。デフォルトは `-1` です。
「 minimumHeight 」および「maximumHeight 」も参照してください 。
Layout.preferredWidth : real [attached]
このプロパティは、レイアウト内の項目の推奨幅を保持します。推奨幅が `-1 ` の場合、それは無視され、レイアウトでは代わりに `implicitWidth ` が使用されます。デフォルトは `-1` です。
「 minimumWidth 」および「maximumWidth 」も参照してください 。
Layout.rightMargin : real [attached, since QtQuick.Layouts 1.2]
アイテムの外側の右余白を指定します。値が設定されていない場合は、margins の値が使用されます。
このプロパティは、QtQuick.Layouts 1.2で導入されました。
marginsも参照してください 。
Layout.row : int [attached]
このプロパティを使用すると、GridLayout 内の項目の行位置を指定できます。
column とこのプロパティの両方が設定されていない場合、そのアイテムにどのセルを割り当てるかはレイアウトに委ねられます。
デフォルト値は `0` です。
「 column 」および「rowSpan 」も参照してください 。
Layout.rowSpan : int [attached]
このプロパティを使用すると、GridLayout 内の項目の行の幅を指定できます。
デフォルト値は1 です。
「 columnSpan 」および「row 」も参照してください 。
Layout.topMargin : real [attached, since QtQuick.Layouts 1.2]
アイテムの外側の上マージンを指定します。値が設定されていない場合は、margins の値が使用されます。
このプロパティは、QtQuick.Layouts 1.2 で導入されました。
marginsも参照してください 。
Layout.useDefaultSizePolicy : enumeration [attached, since 6.8]
このプロパティを使用すると、ユーザーはコンポーネントレベルでレイアウトサイズのポリシーを設定できます。
デフォルト値は、アプリケーション属性 `Qt::AA_QtQuickUseDefaultSizePolicy` を参照することで継承されます。このプロパティを使用すると、その値を上書きすることができます。
| 定数 | 説明 |
|---|---|
Layout.SizePolicyImplicit | レイアウト内のアイテムは、暗黙的または組み込みのサイズポリシーを使用します。 |
Layout.SizePolicyExplicit | レイアウト内のアイテムは、暗黙的なサイズポリシーを使用しません。 |
このプロパティは Qt 6.8 で導入されました。
Layout.verticalStretchFactor : int [attached, since Qt 6.5]
このプロパティを使用すると、垂直方向のストレッチ係数を指定できます。 デフォルトでは、直線レイアウトに配置された2つの同一のアイテムは同じサイズになりますが、1つ目のアイテムのストレッチ係数が1で、2つ目のアイテムのストレッチ係数が2の場合、1つ目のアイテムは利用可能なスペースの1/3を、2つ目のアイテムは利用可能なスペースの2/3を占めるよう調整されます。 なお、実際に利用可能なスペースの 1/3 と 2/3 に正確になるかどうかは、各アイテムのサイズヒントによって異なります。これは、例えば垂直レイアウトが最小の高さで表示される場合、そのすべての子アイテムも結果として最小の高さになるためです。
同様に、垂直レイアウトが推奨高さを設定している場合、すべての子アイテムも推奨高さを持ち、垂直レイアウトが最大高さを設定している場合、すべての子アイテムも最大高さを持ちます。この戦略は、個々のストレッチ係数が何であれ適用されます。その結果、ストレッチ係数は、preferredHeight からmaximumHeight の範囲内でのみ、子アイテムの伸長率を決定することになります。
デフォルト値は-1 であり、これはストレッチ係数が適用されないことを意味します。
注:これには 、Layout::fillHeight がtrueに設定されている必要があります
このプロパティは Qt 6.5 で導入されました。
「horizontalStretchFactor」も参照してください 。
© 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.