Vb.net 在光标位置绘制图像Visual Basic

Vb.net 在光标位置绘制图像Visual Basic,vb.net,draw,paint,cursor-position,Vb.net,Draw,Paint,Cursor Position,基本上我想做的就是在窗体或图片框上的某个位置画一个特定的图像,鼠标点击该位置1秒。我尝试过的代码已经随机绘制了偏移量,所以我希望有人能在这方面指导我。谢谢使用表单的MouseDown事件,并在e.X和e.Y指定的位置绘制。您可以使用计时器控件获得1秒的延迟。下面是一个简单的例子: Public Class Form1 Private WithEvents Tmr As New System.Windows.Forms.Timer Private Sub Form1_Load(

基本上我想做的就是在窗体或图片框上的某个位置画一个特定的图像,鼠标点击该位置1秒。我尝试过的代码已经随机绘制了偏移量,所以我希望有人能在这方面指导我。谢谢

使用表单的MouseDown事件,并在e.X和e.Y指定的位置绘制。您可以使用计时器控件获得1秒的延迟。下面是一个简单的例子:

Public Class Form1

    Private WithEvents Tmr As New System.Windows.Forms.Timer

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Tmr.Interval = 1000
        Tmr.Enabled = False
    End Sub

    Private Sub Form1_MouseDown(sender As Object, e As MouseEventArgs) Handles MyBase.MouseDown
        Using G As Graphics = Me.CreateGraphics
            'G.DrawImage(yourImageReferenceHere, New Point(e.X, e.Y))
            Dim rc As New Rectangle(New Point(e.X, e.Y), New Size(1, 1))
            rc.Inflate(9, 9)
            G.DrawEllipse(Pens.Red, rc)
        End Using
        Tmr.Stop()
        Tmr.Start()
    End Sub

    Private Sub Tmr_Tick(sender As Object, e As EventArgs) Handles Tmr.Tick
        Tmr.Stop()
        Me.Refresh()
    End Sub

End Class