Spec-Zone.ru › Qt 5.12

Тип QML ScrollView

Прокручиваемое представление. Подробнее...

Заявление об импорте: import QtQuick.Controls 2.5
С момента: Qt 5.9
Наследует:

Pane

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

Свойства

  • contentChildren : список<Элемент>
  • contentData : список<Объект>

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

ScrollView обеспечивает прокрутку для пользовательского содержимого. Его можно использовать для замены Flickable или для оформления существующего.

Первый пример демонстрирует наиболее простое использование ScrollView.

ScrollView {
    width: 200
    height: 200
    clip: true

    Label {
        text: "ABC"
        font.pixelSize: 224
    }
}

Примечание: ScrollView не обрезает содержимое автоматически. Если он не используется как элемент полного экрана, вы должны рассмотреть возможность установки свойства clip в true, как показано выше.

Второй пример демонстрирует использование существующего Flickable, то есть ListView.

ScrollView {
    width: 200
    height: 200

    ListView {
        model: 20
        delegate: ItemDelegate {
            text: "Item " + index
        }
    }
}

Размер

Как и в случае с Flickable, при использовании ScrollView следует учитывать несколько моментов:

  • Если в ScrollView используется только один элемент, размер содержимого автоматически рассчитывается на основе неявного размера содержащего элемента. Однако если используется более одного элемента (или не задан неявный размер), свойства contentWidth и contentHeight должны быть установлены в суммарный размер содержащихся элементов.
  • Если размер содержимого меньше или равен размеру ScrollView, он не будет прокручиваемым.

Скролл-полосы

Доступ к горизонтальной и вертикальной скролл-полосам и их настройка возможны с помощью присоединенных свойств ScrollBar.horizontal и ScrollBar.vertical. В следующем примере изменяются политики скролл-полос таким образом, что горизонтальная скролл-полоса всегда отключена, а вертикальная — всегда включена.

ScrollView {
    // ...
    ScrollBar.horizontal.policy: ScrollBar.AlwaysOff
    ScrollBar.vertical.policy: ScrollBar.AlwaysOn
}

Взаимодействие с сенсорным экраном и мышкой

При взаимодействии с сенсорным экраном ScrollView активирует прокрутку, а скролл-полосы становятся неинтерактивными.

При взаимодействии с устройством мыши прокрутка отпускается, а скролл-полосы становятся интерактивными.

Скролл-полосы можно сделать интерактивными при взаимодействии с сенсорным экраном или неинтерактивными при взаимодействии с устройством мыши, явно установив свойство interactive в true или false соответственно.

ScrollView {
    // ...
    ScrollBar.horizontal.interactive: true
    ScrollBar.vertical.interactive: true
}

См. также ScrollBar, ScrollIndicator, Настройка ScrollView, Контейнерные элементы управления и Управление фокусом в Qt Quick Controls 2.

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

contentChildren : список<Элемент>

Это свойство содержит список дочерних элементов содержимого.

Список содержит все элементы, которые были объявлены в QML как дочерние элементы представления.

Примечание: В отличие от contentData, contentChildren не включает невизуальные QML-объекты.

См. также Item::children и contentData.

[по умолчанию] contentData : список<Объект>

Это свойство содержит список данных содержимого.

Список содержит все объекты, которые были объявлены в QML как дочерние элементы представления.

Примечание: В отличие от contentChildren, contentData включает невизуальные QML-объекты.

См. также Item::data и contentChildren.

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

Spec-Zone.ru

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