【发布时间】:2019-11-14 12:40:37
【问题描述】:
我尝试在图像上画一个点 …
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
PictureBox1.Image = Image.FromFile("C:\Users\SHEMMY-7X64\Pictures\postage.jpg")
Using p As New System.Drawing.Pen(Color.Yellow, 4)
Using g As Graphics = PictureBox1.CreateGraphics()
g.DrawEllipse(p, 15, 5, 10, 10)
End Using
End Using
End Sub
图像是绘制的,但不是点。 将代码分为两个步骤时: 1.加载图片
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
PictureBox1.Image = Image.FromFile("C:\Users\SHEMMY-7X64\Pictures\postage.jpg")
End Sub
2。油漆
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Using p As New System.Drawing.Pen(Color.Yellow, 4)
Using g As Graphics = PictureBox1.CreateGraphics()
g.DrawEllipse(p, 15, 5, 10, 10)
End Using
End Using
End Sub
这次画了点。 我在另一个网站上发布了这个问题,并被告知这是一个时间问题。
好的,这是时间问题,但是如何解决呢?
【问题讨论】:
-
永远不要打电话给
CreateGraphics。始终使用提供的Graphics对象在其Paint事件处理程序中绘制控件。每次引发Paint事件时,在控件上绘制的任何内容都会被删除。如果您希望绘图是永久性的,您必须在每个Paint事件上重做它。