我需要一些帮助,我在QML中有以下代码:
jed
这看起来像这样:
但是当您使用鼠标移动时,您会传递分配给您的灰色区域
如何使它不会离开那里?
我不得不放这个让我问这个问题,因为显然我的文字和代码都很少,所以我可以忽略它。
修改
我想保留效果但不关闭滚动
修改
这里它留下容器
这就是我需要的
我该怎么做?
答案 0 :(得分:2)
如果您要禁用过冲效果,请按docs:
所示boundsBehavior:枚举
此属性保持表面是否可能被拖出 可滑动的边界,或超过Flickable的边界时 轻弹。
这使得视觉边缘感觉柔软 而不是一个坚硬的物理边界。
boundsBehavior可以是以下之一:
Flickable.StopAtBounds - 内容无法拖动超出flickable的边界,并且轻弹不会超调。
Flickable.DragOverBounds - 内容可以拖动到 Flickable的边界,但是电影不会过冲。
Flickable.OvershootBounds - 内容可以超出边界 轻弹时,但内容不能超出界限 光滑的。 (自QtQuick 2.5起)
Flickable.DragAndOvershootBounds (默认) - 内容可以拖动到Flickable的边界之外,并且可以在轻弹时超出边界。
在你的情况下:
ListView {
[...]
boundsBehavior: Flickable.StopAtBounds
}
<强>更新强>
在您的情况下,您可以将Rectangle的clip
属性设置为true:
Rectangle{
id: contenedor
color: "#ddd"
anchors.centerIn: parent
width: parent.width * 0.9
height: parent.height * 0.9
clip:true
ListView {
id: list
spacing: 10
model: modeloDeLista
delegate: vistaLista
anchors.fill: parent
}
}