RGB函数就是(1*R+256*G+65536*B)
方法一:
colour=RGB(red,green,blue)
red=colour And &HFF
green= (Color And 65280) \ 256
blue=(Color And &HFF0000) \ 65536
方法二:
Option Explicit
Private Sub Command1_Click()
GetRGB RGB(16, 39, 0)
End Sub
Sub GetRGB(ByVal color As Long, Optional ByRef red As Byte, Optional ByRef green As Byte, Optional ByRef blue As Byte)
Dim temp As String
temp = Right("000000" & Hex(color), 6)
red = "&H" & Right(temp, 2)
green = "&H" & Mid(temp, 3, 2)
blue = "&H" & Left(temp, 2)
End Sub
---------------------------------------------------------------
方法三:
R = Color And &HFF& '通过和16进制数FF进行“与”操作取得低8位
G=(Color\256) And &HFF& '先右移8位,再取低8位,相当于原来的中间8位
B = Col \ 65536 '右移16位,得到的8位,相当于原来的高8位
还有一种写法:
R = Color Mod 256
G = (Color\256) Mod 256
B = Color \65536
这种写法和上面的区别在于使用了“取余数”运算符Mod,结果和上面一样