Public Class Form1
Dim Xstart, Ystart, Xold, Yold As Single, A As Integer
Dim GR As Graphics, P As Pen, цвет As Color
Sub Fon()
' Восстановить цвет фона кнопок
TSB1.BackColor = TS1.BackColor
TSB2.BackColor = TS1.BackColor
TSB3.BackColor = TS1.BackColor
TSB4.BackColor = TS1.BackColor
TSB5.BackColor = TS1.BackColor
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
GR = Me.CreateGraphics
TSCB1.Visible = False
цвет = Color.Black
P = New Pen(цвет, 2)
LB1.BackColor = цвет
End Sub
Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If e.Button <> MouseButtons.Left Then Exit Sub
TSCB1.Visible = False
Xstart = e.X ' начальная координата
Ystart = e.Y
Xold = e.X ' предыдущая координата
Yold = e.Y
End Sub
Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
If e.Button <> MouseButtons.Left Then Exit Sub ' нажата левая кнопка мыши?
P.Color = цвет
P.Width = TSCB1.Text
P.StartCap = Drawing2D.LineCap.Round ' закруглённое начало
P.EndCap = Drawing2D.LineCap.Round ' закруглённый конец
If A = 1 Then
GR.DrawLine(P, Xold, Yold, e.X, e.Y)
End If
Xold = e.X
Yold = e.Y
End Sub
Private Sub Form1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp
If e.Button <> MouseButtons.Left Then Exit Sub
If A = 2 Then
GR.DrawLine(P, Xstart, Ystart, e.X, e.Y)
End If
End Sub
Private Sub TSB3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSB3.Click
CDL1.ShowDialog()
цвет = CDL1.Color
LB1.BackColor = CDL1.Color
End Sub
Private Sub TSB1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSB1.Click
'Кисть
Fon()
A = 1
TSB1.BackColor = Color.LightYellow
End Sub
Private Sub TSB5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSB5.Click
GR.Clear(Me.BackColor)
End Sub
Private Sub TSB2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSB2.Click
'Карандаш
Fon()
A = 2
TSB2.BackColor = Color.LightYellow
End Sub
Private Sub TSB4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSB4.Click
TSCB1.Visible = True
End Sub
Private Sub Form1_SizeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged
GR = Me.CreateGraphics
End Sub
End Class