Spec-Zone.ru › Qt 5.9

Тип SplitView QML

Выкладывает элементы с перетаскиваемым разделителем между каждым элементом. Подробнее...

Оператор импорта: import QtQuick.Controls 1.4
С момента: Qt 5.1
Наследует:

Элемент

  • Список всех членов, включая унаследованные

Свойства

  • handleDelegate : Компонент
  • orientation : int
  • resizing : bool

Методы

  • void addItem(Элемент item)
  • void removeItem(Элемент item)

Подробное описание

SplitView — это элемент управления, который выкладывает элементы горизонтально или вертикально с перетаскиваемым разделителем между каждым элементом.

В SplitView всегда будет один (и только один) элемент, у которого свойство Layout.fillWidth установлено в значение true (или Layout.fillHeight, если orientation равен Qt.Vertical). Это означает, что элемент получит всё оставшееся пространство после выкладки других элементов. По умолчанию, последний видимый дочерний элемент SplitView имеет это свойство установленным, но его можно изменить, явно установив fillWidth в значение true для другого элемента.

Поскольку элемент с fillWidth автоматически будет изменён для соответствия оставшемуся пространству, явные назначения для его свойств width и height будут проигнорированы (но Layout.minimumWidth и Layout.maximumWidth будут всё ещё учтены). Начальные размеры других элементов должны быть заданы через свойства width и height. Любое привязку к ширине или высоте элемента будет разорвана, как только пользователь перетащит маркер разделителя этого элемента.

Маркер может принадлежать элементу слева или сверху, или справа или снизу:

  • Если элемент с fillWidth находится справа: маркер принадлежит левому элементу.
  • Если элемент с fillWidth находится слева: маркер принадлежит правому элементу.

Это снова будет контролировать, какой элемент изменяется при перетаскивании пользователем маркера, и какой маркер скрывается, когда элементу приказывают скрыть.

SplitView поддерживает установку присоединенных свойств Layout для дочерних элементов, что означает, что вы можете установить следующие присоединенные свойства для каждого дочернего элемента:

  • Layout.minimumWidth
  • Layout.minimumHeight
  • Layout.maximumWidth
  • Layout.maximumHeight
  • Layout.fillWidth (true для только одного дочернего элемента)
  • Layout.fillHeight (true для только одного дочернего элемента)

Примечание: импортируйте QtQuick.Layouts 1.0 в ваш QML-файл, чтобы использовать свойства Layout внутри SplitView.

Пример:

Чтобы создать SplitView с тремя элементами и позволить центральному элементу получить избыточное пространство, можно сделать следующее:

SplitView {
    anchors.fill: parent
    orientation: Qt.Horizontal

    Rectangle {
        width: 200
        Layout.maximumWidth: 400
        color: "lightblue"
        Text {
            text: "View 1"
            anchors.centerIn: parent
        }
    }
    Rectangle {
        id: centerItem
        Layout.minimumWidth: 50
        Layout.fillWidth: true
        color: "lightgray"
        Text {
            text: "View 2"
            anchors.centerIn: parent
        }
    }
    Rectangle {
        width: 200
        color: "lightgreen"
        Text {
            text: "View 3"
            anchors.centerIn: parent
        }
    }
}

Документация свойств

handleDelegate : Компонент

Это свойство содержит делегат, который будет создан между каждым дочерним элементом. Внутри делегата доступны следующие свойства:

readonly property bool styleData.index Указывает индекс маркера разделителя. Маркер между первым и вторым элементом получит индекс 0, следующий маркер индекс 1 и т.д.
readonly property bool styleData.hovered Маркер наводится.
readonly property bool styleData.pressed Маркер нажат.
readonly property bool styleData.resizing Маркер перетаскивается.

orientation : int

Это свойство содержит ориентацию SplitView. Значение может быть либо Qt.Horizontal либо Qt.Vertical. Значение по умолчанию — Qt.Horizontal.

resizing : bool

Это свойство имеет значение true , когда пользователь изменяет размер любого из элементов, перетаскивая маркеры разделителей.

Документация методов

void addItem(Элемент item)

Добавляет элемент в конец представления.

Этот QML-метод был представлен в QtQuick.Controls 1.3.

void removeItem(Элемент item)

Удаляет item из представления.

Этот QML-метод был представлен в QtQuick.Controls 1.4.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtquick-controls-splitview.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API