Как получить цвет пикселя в PictureBox? - Visual Basic .NET

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

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

Добрый день, Прошу помочь в реализации оператора GetPixel для Picturebox, перепробовал все возможные варианты кодов вот например:
Но постоянно выскакивает ошибка : Ссылка на объект не указывает на экземпляр объекта. Спасибо заранее !!!

Решение задачи: «Как получить цвет пикселя в PictureBox?»

textual
Листинг программы
Imports System.Drawing.Drawing2D
 
Public Class Form1
 
    Private lastPT As Point
    Private signature As New GraphicsPath
 
    Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
 
        If Not IsNothing(signature) Then
            If e.Button = Windows.Forms.MouseButtons.Left Then
                lastPT = New Point(e.X, e.Y)
            End If
        End If
    End Sub
 
    Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove
 
        If Not IsNothing(signature) Then
            If e.Button = Windows.Forms.MouseButtons.Left Then
                Dim curPt As New Point(e.X, e.Y)
                signature.AddLine(lastPT, curPt)
 
                lastPT = curPt
                PictureBox1.Refresh()
            End If
 
        End If
    End Sub
 
    Private Sub PictureBox1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseUp
        If Not IsNothing(signature) Then
 
            If e.Button = Windows.Forms.MouseButtons.Left Then
                signature.StartFigure()
            End If
 
        End If
    End Sub
 
 
    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
 
        If Not IsNothing(signature) Then
            e.Graphics.DrawPath(Pens.Black, signature)
        End If
 
    End Sub
 
 
    Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
        signature.Reset()
        PictureBox1.Refresh()
 
    End Sub
 
 
    Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
        Dim bmp As New Drawing.Bitmap(PictureBox1.Width, PictureBox1.Height)
        PictureBox1.DrawToBitmap(bmp, PictureBox1.ClientRectangle)
        bmp.Save(System.IO.Path.Combine(My.Computer.FileSystem.SpecialDirectories.MyDocuments, "test.bmp"), System.Drawing.Imaging.ImageFormat.Bmp)
 
    End Sub
 
 
End Class

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


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

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

8   голосов , оценка 4.625 из 5
Похожие ответы