VB.NET 章鱼哥 编程实现获取图片上任一点的RGB值

摘要:使用Bitmap类中的GetPixel(x,y)函数进行指定点颜色的获取,然后再分别获取R,G,B的值

新建一个空的窗体应用程序,在窗体Form1中添加一个PictureBox控件,一个Button控件,三个label标签,三个TextBox控件。

下面是代码,很简单,首先就是选择一个图片显示在PictureBox控件上

'作者:章鱼哥,QQ:3107073263群:'如有疑问或好的建议请联系我,大家一起进步<pre name="code" class="vb">    Private Sub btn_ImportPicture_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btn_ImportPicture.Click

        Dim OpenDialog1 As New OpenFileDialog
        OpenDialog1.Filter = "JPG格式|*.jpg|JPEG格式|*.jpeg|PNG格式|*.png|ICO文件,Gif文件|*.ICO;*gif|所有文件*.*|*.*"
        If OpenDialog1.ShowDialog = DialogResult.OK Then
            Dim Path As String = OpenDialog1.FileName
            PictureBox1.Image = Image.FromFile(Path)

        End If

    End Sub

 
这就是核心部分了。很简单的。要说明的是使用GetPixel()函数要先把图片转换成BitMap格式的。 
  Private Sub PictureBox1_MouseDown(ByVal sender As System.Object,ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
        Dim GetColor As Color = CType(PictureBox1.Image,Bitmap).GetPixel(e.X,e.Y)
        txt_B.Text = GetColor.B.ToString
        txt_G.Text = GetColor.G.ToString
        txt_R.Text = GetColor.R.ToString
    End Sub

可以了,任意点击图片上的一点,下面就会显示RGB的值。

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...