VB 中颜色互相转换的两个小函数(REG和 VB颜)

来源:互联网 发布:lol代练价格表淘宝 编辑:程序博客网 时间:2024/06/05 08:43

VB颜色和RGB色互相转换头疼了我好一段时间,如今找到解决办法了

特别贴出来与大家共享 

 

Type RGB
    Red As String
    Green As String
    Blue As String
End Type
Public Function ColorToRGB(ByVal dwColor As Long) As RGB
    Dim clrHex As String

    clrHex = Replace(Format(Hex$(dwColor), "@@@@@@"), " ", "0")
    ColorToRGB.Red = Mid$(clrHex, 5, 2)
    ColorToRGB.Green = Mid$(clrHex, 3, 2)
    ColorToRGB.Blue = Mid$(clrHex, 1, 2)    '
End Function

 

Public Function RgbToColor(ByVal rColor As String)
    Dim tempColor As String, RedColor As String, GreenColor As String, BlueColor As String
    tempColor = Replace(rColor, "0x", "")
    RedColor = Mid(tempColor, 1, 2)
    GreenColor = Mid(tempColor, 3, 2)
    BlueColor = Mid(tempColor, 5, 2)
    RgbToColor = RGB(Val("&H" & RedColor), Val("&H" & GreenColor), Val("&H" & BlueColor))
End Function

 

说明===============

ColorToRGB 作用是将VB中的颜色转换成RGB的颜色 比如 &H00FFFFFF& 会变成FFFFFF

RgbToColor 作用是将16进制的颜色 如FFFF00 转换成对应的十进制 再通过VB自带的RGB函数 转换成VB需要的颜色