vbnetgraphic简单的画图程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

graphic 简单的画图程序

[vb]

Public Class Form1

Dim DrawState As Boolean

Dim PreX As Single

Dim PreY As Single

Dim eP As New Pen(Color.Black, 3) ' 构造黑色画笔,并将它赋给对象变量eP

'Dim g As Graphics = Me.CreateGraphics ' 在窗体上构造一块画布,并将它赋给对象变量g

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

' 将DrawState初始化为False,表示提笔

DrawState = False

End Sub

Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As

System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown

' 当鼠标左键被按下时,把DrawState设为True,表示落笔开始画线

Dim g As Graphics = Me.CreateGraphics

If e.Button = Windows.Forms.MouseButtons.Left Then

DrawState = True ' 设置画图状态

PreX = e.X ' PreX和PreY保存了线条的起点。

PreY = e.Y

End If

' 当按住鼠标右键时,画一个直径为50的圆

If e.Button = Windows.Forms.MouseButtons.Right Then

g.DrawEllipse(eP, e.X - 25, e.Y - 25, 100, 100)

End If

End Sub

Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove

' 当鼠标移动时,如果处于画线状态,则在(PreX,PreY)与(X,Y)之间画一条直线

Dim g As Graphics = Me.CreateGraphics

If DrawState = True Then

g.DrawLine(eP, PreX, PreY, e.X, e.Y)

PreX = e.X

PreY = e.Y

End If

End Sub

Private Sub Form1_MouseUp(ByVal sender As Object, ByVal e As

System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp

' 当释放鼠标左键时,解除画线状态

If e.Button = Windows.Forms.MouseButtons.Left Then

DrawState = False

End If

End Sub

End Class

Public Class Form1

Dim DrawState As Boolean

Dim PreX As Single

Dim PreY As Single

Dim eP As New Pen(Color.Black, 3) ' 构造黑色画笔,并将它赋给对象变量eP

'Dim g As Graphics = Me.CreateGraphics ' 在窗体上构造一块画布,并将它赋给对象变量g

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

' 将DrawState初始化为False,表示提笔

DrawState = False

End Sub

Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As

System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown

' 当鼠标左键被按下时,把DrawState设为True,表示落笔开始画线

Dim g As Graphics = Me.CreateGraphics

If e.Button = Windows.Forms.MouseButtons.Left Then

DrawState = True ' 设置画图状态

PreX = e.X ' PreX和PreY保存了线条的起点。

PreY = e.Y

End If

' 当按住鼠标右键时,画一个直径为50的圆

If e.Button = Windows.Forms.MouseButtons.Right Then

g.DrawEllipse(eP, e.X - 25, e.Y - 25, 100, 100)

End If

End Sub

Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As

System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove

' 当鼠标移动时,如果处于画线状态,则在(PreX,PreY)与(X,Y)之间画一条直线

Dim g As Graphics = Me.CreateGraphics

If DrawState = True Then

相关文档
最新文档