Рисование в графическом окне - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Всем здравствуйте. Мы нарисовали на PictureBox средствами GDI+ или API графический примитив. Свернув-развернув форму мы получим чистое окно, наше рисование исчезнет. Вставлять код в обработчик Paint не вариант, так-как это не статический блок кода. Наверняка есть способ, позволяющий дублировать наше рисование в памяти и при перерисовке формы его восстанавливать.

Решение задачи: «Рисование в графическом окне»

textual
Листинг программы
  1. Public Class Form3
  2.     Private rnd As Random
  3.     Private x1, y1, x2, y2 As Integer
  4.     Private BM As Bitmap
  5.     Private pnLn As Pen
  6.     Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  7.         Timer1.Interval = 500
  8.         pnLn = New Pen(Brushes.Red, 3)
  9.         BM = New Bitmap(PictureBox1.Width, PictureBox1.Height)
  10.     End Sub
  11.     Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
  12.         x1 = 0 : y1 = 0
  13.         rnd = New Random
  14.         Timer1.Enabled = True
  15.     End Sub
  16.     Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
  17.         x2 = rnd.Next(0, PictureBox1.Width)
  18.         y2 = rnd.Next(0, PictureBox1.Height)
  19.         Using G As Graphics = Graphics.FromImage(BM)
  20.             G.DrawLine(pnLn, New PointF(x1, y1), New PointF(x2, y2))
  21.             PictureBox1.Image = BM
  22.         End Using
  23.         x1 = x2
  24.         y1 = y2
  25.     End Sub
  26. End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут