Рисование в графическом окне - Visual Basic .NET
Формулировка задачи:
Всем здравствуйте.
Мы нарисовали на PictureBox средствами GDI+ или API графический примитив.
Свернув-развернув форму мы получим чистое окно, наше рисование исчезнет.
Вставлять код в обработчик Paint не вариант, так-как это не статический блок кода.
Наверняка есть способ, позволяющий дублировать наше рисование в памяти и при перерисовке формы его восстанавливать.
Решение задачи: «Рисование в графическом окне»
textual
Листинг программы
- Public Class Form3
- Private rnd As Random
- Private x1, y1, x2, y2 As Integer
- Private BM As Bitmap
- Private pnLn As Pen
- Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
- Timer1.Interval = 500
- pnLn = New Pen(Brushes.Red, 3)
- BM = New Bitmap(PictureBox1.Width, PictureBox1.Height)
- End Sub
- Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
- x1 = 0 : y1 = 0
- rnd = New Random
- Timer1.Enabled = True
- End Sub
- Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
- x2 = rnd.Next(0, PictureBox1.Width)
- y2 = rnd.Next(0, PictureBox1.Height)
- Using G As Graphics = Graphics.FromImage(BM)
- G.DrawLine(pnLn, New PointF(x1, y1), New PointF(x2, y2))
- PictureBox1.Image = BM
- End Using
- x1 = x2
- y1 = y2
- End Sub
- End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д