redcolor = color And &HFF
 greencolor = (color And 65280) \ 256
 bluecolor = (color And &HFF0000) \ 65536
比如说&HFF,&HFF0000,65280,256,65536是什么意思?为什么要除以256,65536

解决方案 »

  1.   

    这个代码是在VB中,计算一个24位真彩色的 RGB分量会值。
    在VB中,一个Long数值代表颜色,格式为(十六进制): 00BBGGRR
    它的最高字节是被丢弃不用的,正常情况下是为0。最低位的那个字节代表红色,color And &HFF 运算之后,
    它的值就是 000000RR了,即只剩下红色的值。十进制的65280,十六进制就是 0000FF00
    (color And 65280) 运算结果为 0000GG00,这里的“GG”部分,就是代表绿色的分量,
    0000GG00 \ 256,就是 000000GG了,它就是绿色的分量值。蓝色分量,参考绿色的分量值的计算。就不多说了。