默认情况下,Flickable
滚动鼠标滚轮事件:如果按下Shift修改器则水平滚动;如果没有修改器处于活动状态则垂直滚动。我想覆盖此行为以使其放大/缩小。
我尝试将MouseArea
用作Flickable
的孩子。在onWheel
处理程序中定义所需的行为我得到了我想要的,但它打破了轻弹功能。两个触摸点的运动在我的Mac上被识别为轮子事件,这会阻止Flickable
加强此事件(MouseArea.preventSteeling
默认为false
)。所以我得到一些混合缩放功能,它尊重Flickable
的速度/加速度行为。
答案 0 :(得分:0)
在MouseArea下面添加一个onWheel处理程序:
MouseArea
{
onWheel: {
if (wheel.modifiers & Qt.ControlModifier){
if (wheel.angleDelta.y > 0)
{
zoomin()
}
else
{
zoomout()
}
}
else{
wheel.accepted=false
}
}
}