이 페이지에서

FlexboxLayout QML Type

FlexboxLayout QML 구문은 퀵 아이템에 대한 플렉스 레이아웃을 제공합니다. 더 보기...

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

Item

Status: Technology preview

이 유형은 기술 미리보기 단계에 있으며 변경될 수 있습니다.

속성

연관 속성

상세 설명

FlexboxLayout을 사용하면 CSS 플렉서블 박스 레이아웃과 유사한 방식으로 퀵 아이템을 유연하게 배치할 수 있습니다. 내부적으로 Qt FlexboxLayout은 yoga 엔진을 사용하여 플렉스 아이템의 기하학적 구조를 도출합니다. yoga 라이브러리는 CSS 플렉서블 박스 레이아웃의 하위 집합입니다. 따라서 FlexboxLayout은 yoga 라이브러리에서 지원하는 기능으로 제한될 수 있습니다.

참고: FlexboxLayout은 기능 면에서 yoga 라이브러리 버전 2.0을 따릅니다.

FlexboxLayout 내의 항목은 기존의 레이아웃 부착 속성을 통해 선호 크기, 최소 크기 및 최대 크기로 구성할 수 있습니다. 예를 들어, FlexboxLayout 내의 항목을 늘려야 하는 경우, 레이아웃 부착 속성인 Layout.fillWidth 또는 Layout.fillHeight 을 설정할 수 있습니다.

FlexboxLayout 내의 항목은 다음과 같은 첨부 속성을 지원합니다:

부착 속성에 대한 자세한 내용은 여기에서 확인하세요.

이 유형을 더 효율적으로 사용하려면 ` Qt Quick Layouts ` 모듈의 일반적인 작동 원리를 이해하는 것이 좋습니다. 자세한 내용은 ` Qt Quick Layouts ` 개요를 참조하십시오.

사용 예시

다음 코드 조각은 QML FlexboxLayout을 사용하여 직사각형 항목을 보다 유연하게 배열하는 최소한의 예제를 보여줍니다.

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
    }
}

참고: 이 API는 기술 미리보기(tech preview) 단계에 있으며, 향후 Qt 버전에서 변경되거나 제거될 수 있습니다.

ColumnLayout, GridLayout, RowLayout, StackView 및 Qt Quick Layouts 개요도참조하십시오 .

속성 문서

alignContent : enumeration

이 속성은 플렉스 박스 레이아웃의 가로축을 따라 플렉스 라인이 분포되는 방식을 지정합니다.

사용 가능한 값:

Constant설명
FlexboxLayout.AlignStart플렉스 라인이 플렉스 박스 레이아웃의 시작 부분에 정렬됩니다.
FlexboxLayout.AlignCenter플렉스 라인이 플렉스 박스 레이아웃의 중앙을 기준으로 정렬됩니다.
FlexboxLayout.AlignEnd플렉스 라인은 플렉스 박스 레이아웃의 끝 부분에 정렬됩니다.
FlexboxLayout.AlignStretch(기본값) 플렉스 라인은 플렉스 박스 레이아웃의 높이에 따라 늘어나게 됩니다.
FlexboxLayout.AlignSpaceBetween공백은 줄 사이에 균등하게 분배되며, 플렉스 박스 레이아웃 가장자리에는 공백이 없습니다.
FlexboxLayout.AlignSpaceAround줄 사이의 간격은 균등하게 분배되며, 플렉스 박스 레이아웃의 가장자리에는 절반 크기의 간격이 생깁니다.
FlexboxLayout.AlignSpaceEvenly줄과 플렉스 박스 레이아웃의 가장자리 사이에 공간이 균등하게 분배됩니다. Qt 6.10에서는 지원되지 않습니다.

기본값은 ` FlexboxLayout.AlignStart`입니다.

alignItems : enumeration

이 속성은 플렉스 박스 레이아웃의 플렉스 라인 내 항목들의 정렬 방식을 지정하며, 항목은 크로스 축 ( direction 속성으로 정의된 메인 축에 수직인 축)을 따라 정렬됩니다. 이 속성은 플렉스 박스 레이아웃 내의 항목들이 첨부 속성 FlexboxLayout.alignSelf 을 통해 재정의할 수 있습니다.

사용 가능한 값:

상수설명
FlexboxLayout.AlignStart(기본값) 항목이 플렉스 박스 레이아웃의 가로축 시작점에 정렬됩니다.
FlexboxLayout.AlignCenter항목이 플렉스 박스 레이아웃의 교차축 중심을 기준으로 정렬됩니다.
FlexboxLayout.AlignEnd항목이 플렉스 박스 레이아웃의 가로축 끝 부분에 정렬됩니다.

참고: 가능한 값에 언급된정렬 방식은 alignItems 속성에만 적용됩니다.

기본값은 ` FlexboxLayout.AlignStart`입니다.

columnGap : real

이 속성은 인라인 축을 따라 ‘ FlexboxLayout ’에 적용해야 하는 공간의 양을 지정합니다. 이 속성을 설정하면 인라인 축에 영향을 미치는 ‘ gap ’ 값이 재정의됩니다.

기본값은 0 입니다.

direction : enumeration

이 속성은 플렉스 박스 레이아웃 내의 항목 레이아웃 방향을 지정하며, 주축(main-axis)을 정의합니다.

사용 가능한 값:

상수설명
FlexboxLayout.Row(기본값) 항목은 왼쪽에서 오른쪽으로 배치됩니다.
FlexboxLayout.RowReversed항목이 오른쪽에서 왼쪽으로 배치됩니다.
FlexboxLayout.Column항목이 위에서 아래로 배열됩니다.
FlexboxLayout.ColumnReversed항목이 아래에서 위로 배치됩니다.

기본값은 FlexboxLayout.Row 입니다.

gap : real

이 속성은 인라인 축과 블록 축 모두에서 ‘ FlexboxLayout ’에 적용해야 하는 공간의 크기를 지정합니다.

기본값은 0 입니다.

justifyContent : enumeration

이 속성은 플렉스 박스 레이아웃의 주축을 따라 항목들이 배치되는 방식을 지정합니다.

사용 가능한 값:

상수설명
FlexboxLayout.JustifyStart(기본값) 항목들이 플렉스 박스 레이아웃의 시작 부분에 정렬됩니다.
FlexboxLayout.JustifyCenter항목들이 플렉스 박스 레이아웃의 중앙을 기준으로 정렬됩니다.
FlexboxLayout.JustifyEnd항목들이 플렉스 박스 레이아웃의 끝부분에 정렬됩니다.
FlexboxLayout.JustifySpaceBetween공백은 항목들 사이에 균등하게 분배되며, 플렉스 박스 레이아웃의 가장자리에는 공백이 없습니다.
FlexboxLayout.JustifySpaceAround공간은 항목들 사이에 균등하게 분배되며, 플렉스 박스 레이아웃의 가장자리에는 절반 크기의 공간이 생깁니다.
FlexboxLayout.JustiftSpaceEvenly공백은 항목과 플렉스 박스 레이아웃의 가장자리 사이에 균등하게 분배됩니다.

기본값은 ` FlexboxLayout.JustifyStart`입니다.

rowGap : real

이 속성은 블록 축을 따라 ‘ FlexboxLayout ’에 적용해야 하는 공간의 양을 지정합니다. 이 속성을 설정하면 블록 축에 적용되는 ‘ gap ’ 값이 재정의됩니다.

기본값은 0 입니다.

wrap : enumeration

이 속성은 플렉스 박스 레이아웃 내의 항목이 줄 바꿈을 할 수 있는지 여부를 지정하며, 이는 자식 요소가 플렉스 박스 레이아웃의 크기를 초과할 때 발생합니다. 항목이 줄 바꿈되는 경우, 명시된 오버플로우 조건에 따라 여러 줄로 배치됩니다. 각 줄은 가로축을 따라 항목의 최대 크기를 차지합니다.

사용 가능한 값:

상수설명
FlexboxLayout.Wrap항목들이 플렉스 박스 레이아웃 내에서 여러 줄로 줄바꿈됩니다.
FlexboxLayout.NoWrap(기본값) 항목이 줄바꿈되지 않고 플렉스 박스 레이아웃 내에서 한 줄로 배열됩니다.
FlexboxLayout.WrapReverse항목들이 플렉스 박스 레이아웃 내에서 반대 방향으로 여러 줄로 나뉘어 배치됩니다.

기본값은 ` FlexboxLayout.NoWrap`입니다.

관련 속성 문서

FlexboxLayout.alignSelf : enumeration [attached]

이 첨부된 속성은 플렉스 박스 레이아웃에서 해당 항목을 가로축을 따라 정렬할 수 있게 하며, 상위 요소의 플렉스 박스 레이아웃 속성 alignItems 을 재정의합니다.

기본적으로 자식 항목은 부모의 정렬을 상속받으며, ‘ FlexboxLayout.AlignStart ’, ‘ FlexboxLayout.AlignCenter ’, ‘ FlexboxLayout.AlignEnd ’ 등의 값을 사용하여 부모의 플렉스 박스 레이아웃 속성인 ‘ alignItems ’을 재정의할 수 있습니다.

기본값은 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.