默认情况下,Flickable在鼠标滚轮事件上滚动:如果按下Shift修改器,则水平滚动;如果没有活动修改器,则垂直滚动。我想重写这个行为,让它放大/缩小。
我试着将MouseArea作为Flickable的孩子来使用。在onWheel处理程序中定义所需的行为我得到了我想要的,但它破坏了轻弹特性。在我的苹果电脑上,两个触摸点的运动被识别为轮子事件,这阻止了Flickable强化这个事件(默认情况下,MouseArea.preventSteeling是false )。所以我得到了一些混合的缩放功能,它尊重Flickable的速度/加速度行为。
发布于 2015-10-22 04:44:14
在MouseArea下面添加一个onWheel处理程序:
MouseArea
{
onWheel: {
if (wheel.modifiers & Qt.ControlModifier){
if (wheel.angleDelta.y > 0)
{
zoomin()
}
else
{
zoomout()
}
}
else{
wheel.accepted=false
}
}
}https://stackoverflow.com/questions/26418518
复制相似问题