Тип QML ScrollView
Прокручиваемое представление. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.5 |
| С момента: | Qt 5.9 |
| Наследует: |
Свойства
- 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