как и на веб-страницах, когда контент выходит за пределы прямоугольника, появляется полоса прокрутки. Есть ли еще кто-нибудь, кто может мне помочь? Я пробовал использовать список, но не могу использовать его в прямоугольнике
как создать полосу прокрутки для прямоугольника в QML
comment
Было бы полезно дать немного больше деталей и, возможно, отрывок кода того, что вы пробовали.
- person wwkudu   schedule 06.11.2016
comment
Попробуйте ScrollView
- person folibis   schedule 06.11.2016
Ответы (2)
В документации есть пример использования _ 1_ без Flickable:
import QtQuick 2.7
import QtQuick.Controls 2.0
Rectangle {
id: frame
clip: true
width: 160
height: 160
border.color: "black"
anchors.centerIn: parent
Text {
id: content
text: "ABC"
font.pixelSize: 160
x: -hbar.position * width
y: -vbar.position * height
}
ScrollBar {
id: vbar
hoverEnabled: true
active: hovered || pressed
orientation: Qt.Vertical
size: frame.height / content.height
anchors.top: parent.top
anchors.right: parent.right
anchors.bottom: parent.bottom
}
ScrollBar {
id: hbar
hoverEnabled: true
active: hovered || pressed
orientation: Qt.Horizontal
size: frame.width / content.width
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
}
}
person
jpnurmi
schedule
06.11.2016
Я думаю, это так здорово, что вы можете получить эту функциональность на таком базовом предмете. :)
- person Mitch; 06.11.2016
Должно ли это работать на сегодняшний день (декабрь 2017 г.)? Потому что это не так, когда я пытаюсь. и эти две страницы qt не найдены.
- person s1n7ax; 17.12.2017
У меня работает с Qt 5.9.3 и Qt 5.10.0. Я обновил ссылки.
- person jpnurmi; 17.12.2017
добавление прямоугольника в flickable решило мою проблему
import QtQuick.Controls 2.5
import QtQuick.Controls.Material 2.5
import QtQuick 2.8
Item {
id: item1
visible: true
width: 800
height: 600
ScrollView {
id: frame
clip: true
anchors.fill: parent
//other properties
ScrollBar.vertical.policy: ScrollBar.AlwaysOn
Flickable {
contentHeight: 2000
width: parent.width
Rectangle {
id : rectangle
color: "#a7c4c6"
radius: 6
//visible: !busyIndicator.running
anchors.fill: parent
}
}
}
}
person
Mahdi Khalili
schedule
29.12.2018