实现鼠标手写板(.Net)

本文是一个实现手写板的简单小示例,当鼠标按下时开始写字,鼠标松开时停止写字。

原理非常简单,当触发MouseDown事件时记录起始坐标startPoint,随着鼠标的移动触发MouseMove事件,记录当前坐标currentPoint,并以startPoint和currentPoint两点画直线,刷新startPoint的坐标。

实现代码如下:

Public Class Form1
    Private graphics As Graphics
    Private startPoint As Point
    Private currentPoint As Point
    Private flagDraw As Boolean

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        graphics = Me.CreateGraphics
    End Sub

    Private Sub Form1_MouseDown(sender As Object, e As MouseEventArgs) Handles Me.MouseDown
        startPoint = e.Location
        flagDraw = True
    End Sub

    Private Sub Form1_MouseMove(sender As Object, e As MouseEventArgs) Handles Me.MouseMove
        If flagDraw Then
            currentPoint = e.Location
            graphics.DrawLine(New Pen(Brushes.Black), startPoint, currentPoint)
            startPoint = currentPoint
        End If
    End Sub

    Private Sub Form1_MouseUp(sender As Object, e As MouseEventArgs) Handles Me.MouseUp
        flagDraw = False
    End Sub

End Class


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值