Тип QML ScrollView
Прокручиваемое представление. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.14 |
| С момента: | 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.14/qml-qtquick-controls2-scrollview.html