Тип QML ScrollView
Прокручиваемое представление. Подробнее...
| Оператор импорта: | import QtQuick.Controls 2.15 |
| С: | Qt 5.9 |
| Наследует: |
Свойства
- contentChildren : список<Item>
- 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.
Документация по свойствам
contentChildren : список<Item>
Это свойство содержит список дочерних элементов содержимого.
Список содержит все элементы, объявленные в 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.15/qml-qtquick-controls2-scrollview.html