我试图使用QtQuick创建一个简单的仪表。我面临的问题是针旋转不顺畅。当针角度变为较高值时,针头不能平稳移动,运动中有一些抖动,也感觉像多针移动。我尝试使用大多数可用的Animations Types和Easing类型,但结果是否定的。
main.qml
import QtQuick 2.0
Rectangle {
visible: true
width: 800
height: 800
color: "#00000000"
// My Needle
Rectangle{
id: id_needle
x: 350
y: 350
width: 300
height: 5
color: "red"
antialiasing: true
smooth: true
transform: Rotation {
id: rotation
origin.x: 3
origin.y: 3
angle: 0
Behavior on angle {
NumberAnimation{
duration: 1500
easing.type: Easing.OutQuad
}
}
}
}
// Sample Timer to update needle angle
Timer{
id: tim
repeat: true
running: true
interval: 2000
onTriggered: {
var data = Math.floor(Math.random() * 360) + 0
rotation.angle = data
}
}
}
答案 0 :(得分:0)
我认为这是因为您的虚拟机没有vsync,这种撕裂是由您的显示器引起的。