
【VB】如何获得Picture1中某一点的RGB值?
4个回答
展开全部
Private Sub Command1_Click()
x = 100: y = 100 '提取的坐标
c = Picture1.Point(x, y) '返回这个点的rgb长整形值
b = c \ 65536
g = (c Mod 65536) \ 256
r = c Mod 256
cRgb = r & "," & g & "," & b
Print cRgb
Print c, RGB(r, g, b) '验证过程
End Sub
x = 100: y = 100 '提取的坐标
c = Picture1.Point(x, y) '返回这个点的rgb长整形值
b = c \ 65536
g = (c Mod 65536) \ 256
r = c Mod 256
cRgb = r & "," & g & "," & b
Print cRgb
Print c, RGB(r, g, b) '验证过程
End Sub
展开全部
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Cls
Dim sj As Long
Dim ColorZ(1 To 3) As Byte
sj = Picture1.Point(X, Y)
ColorZ(1) = (sj Mod 65536) Mod 256 'Red
ColorZ(2) = (sj Mod 65536) \ 256 'Green
ColorZ(3) = sj \ 65536 'Blue
Print "Red="; (Val(sj) Mod 65536) Mod 256 'Red
Print "Green="; (Val(sj) Mod 65536) \ 256 'Green
Print "Blue="; Val(sj) \ 65536 'Blue
End Sub
Cls
Dim sj As Long
Dim ColorZ(1 To 3) As Byte
sj = Picture1.Point(X, Y)
ColorZ(1) = (sj Mod 65536) Mod 256 'Red
ColorZ(2) = (sj Mod 65536) \ 256 'Green
ColorZ(3) = sj \ 65536 'Blue
Print "Red="; (Val(sj) Mod 65536) Mod 256 'Red
Print "Green="; (Val(sj) Mod 65536) \ 256 'Green
Print "Blue="; Val(sj) \ 65536 'Blue
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Declare Function GetPixel Lib "gdi32" (ByVal hDC As Long, ByVal x As Long, ByVal y As Long) As Long
Dim DC As Long
colorp = GetPixel(DC, 100, 200)
Dim DC As Long
colorp = GetPixel(DC, 100, 200)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用API函数,只要Picture1.Point(x,y)就可以了
用API太繁
用API太繁
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询