qml的绘图Canvas

来源:互联网 发布:手机网络配置文件 编辑:程序博客网 时间:2024/04/29 17:13
import QtQuick 2.5import QtQuick.Window 2.2Window {    visible: true    width: 400    height: 400    Rectangle{        id:rec        x:50        y:50        width:250        height: 250        color: "gray"    Canvas{       x:50       y:50       id:canvas       width: 150       height: 150       property real lastX       property real lastY    contextType: "2d"    visible: true    onPaint: {//绘图事件的响应        context.lineWidth=1.0;//线的宽度        context.strokeStyle="red";//线的颜色        context.fillStyle="white";//填充颜色        context.beginPath();//开始        context.moveTo(lastX, lastY)//移动到指定位置         lastX = area.mouseX         lastY = area.mouseY        context.lineTo(lastX, lastY)//划线到指定位置        context.stroke();//背景执行    }    MouseArea {               id: area              anchors.fill: parent//屏蔽父窗口的点击事件               onPressed: {                    canvas.lastX = mouseX//鼠标位置                    canvas.lastY = mouseY               }               onPositionChanged: {//位置改变事件                   canvas.requestPaint()//重绘               }} } }}

                                             
0 0