嘿,发布这个问题来学习如何在onclick上弯曲一条线,即使用路径曲线我想弯曲一条线,但不是硬编码,它发生在鼠标单击事件上,例如单击(400,320)然后在该位置Y上弯曲位置将发生变化(例如说+75),因为在图像中它是硬编码的,但是我希望无论何时发生鼠标单击事件,曲线onclick都应该弯曲
答案 0 :(得分:2)
这是我的实现。这不是您想要的形状。似乎您无法使用PathCurve
来获得类似图像的图像,但是肯定可以通过 PathCubic 对结果进行更多控制。 >
Canvas {
id: canvas
width: 640; height: 640
contextType: "2d"
Path {
id: myPath
startX: 320; startY: 0
PathCurve { id: curvePoint_top; x: 320; y: curvePoint.y - 80 }
PathCurve { id: curvePoint; x: 320; y: 320 }
PathCurve { id: curvePoint_bottom; x: 320; y: curvePoint.y + 80 }
PathCurve { x: 320; y: 640 }
}
onPaint: {
context.clearRect(0,0,width,height);
context.strokeStyle = Qt.rgba(.4,.6,.8);
context.path = myPath;
context.stroke();
}
MouseArea{
anchors.fill: parent
onClicked: {
curvePoint.x = mouseX;
curvePoint.y = mouseY;
canvas.requestPaint();
}
}
}