Скриншот PictureBox без областей окна - Visual Basic .NET

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

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

Доброе время суток вам. На форме есть PictureBox1 и Label1, Label2 (это кнопки: сохранить и снимок) PictureBox1 сделан прозрачный на форме см скрин. Делаю скриншот выходит так: Как это убрать? То есть чтоб снимок получался без интерфейса и рамок программы. Вот кусок кода:
Листинг программы
  1. Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click
  2. SaveFileDialog1.Filter = "JPG|*.jpg"
  3. If SaveFileDialog1.ShowDialog = DialogResult.Cancel Then Exit Sub
  4. PictureBox2.Image.Save(SaveFileDialog1.FileName)
  5. End Sub
  6. Private Sub Label2_Click(sender As Object, e As EventArgs) Handles Label2.Click
  7. Dim b As New Bitmap(PictureBox2.Width, PictureBox2.Height, System.Drawing.Imaging.PixelFormat.Format32bppRgb)
  8. a = Graphics.FromImage(b)
  9. a.Clear(Color.FromArgb(13, 11, 12))
  10. a.CopyFromScreen(Me.Location.X, Me.Location.Y, 0, 0, New Size(PictureBox2.Width, PictureBox2.Height))
  11. PictureBox2.Image = b
  12. End Sub
Вот сделанный снимок: Код брал с этого форума. Суть программы; делать скриншот в рамке (рамку можно растягивать) Заранее спасибо.

Решение задачи: «Скриншот PictureBox без областей окна»

textual
Листинг программы
  1. Public Class Form1
  2.     Dim a As Graphics
  3.     Private Sub Label7_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) Handles Label7.MouseDown
  4.         Dim b As New Bitmap(PictureBox2.Width, PictureBox2.Height, System.Drawing.Imaging.PixelFormat.Format32bppRgb)
  5.         a = Graphics.FromImage(b)
  6.         a.Clear(Color.FromArgb(13, 11, 12))
  7.         Dim r As Rectangle = Me.RectangleToScreen(Me.ClientRectangle)
  8.         a.CopyFromScreen(r.X + PictureBox2.Location.X, r.Y + PictureBox2.Location.Y, 0, 0, New Size(PictureBox2.Width, PictureBox2.Height))
  9.         PictureBox1.Image = b
  10.         'SaveFileDialog1.Filter = "JPG|*.jpg"
  11.         'If SaveFileDialog1.ShowDialog = DialogResult.Cancel Then Exit Sub
  12.         'PictureBox2.Image.Save(SaveFileDialog1.FileName)
  13.     End Sub
  14. End Class

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


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

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

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

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

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

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