举个例子:正红色的表示
目前创新互联已为超过千家的企业提供了网站建设、域名、虚拟空间、网站托管维护、企业网站设计、修水网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
第一种:H000000FF(0可省去)
第二种:vbred
第三种:RGB(255, 0, 0)
我就知道这么多了,希望对你有帮助
调用格式:对象.关于颜色的属性=颜色的表示方法
Dim btp As Bitmap = PictureBox1.Image
Dim c As Color = btp.GetPixel(x_x, y_x)
'然后c.A,c.R,c.G,c.B就是对应的颜色的ARGB値
public Color col(string colorName)
{
Type colorType = typeof(Color);
PropertyInfo info = colorType.GetProperty(colorName, BindingFlags.Public | BindingFlags.Static);
if (infos == null)
{
//throw Exception
}
return(Color)info.GetValue(null, null);
}
是这个意思么?输入“Red”, 返回Color.Red 区分大小写
首先纠正一下,HFFFFFFFF不是白色,正确的应该是HFFFFFF,共三个字节,每个字节分别是红绿蓝三原色的分量值。如果用HFFFFFFFF(这是四个字节),VB6会报错的。
其次,vbWhite是VB的内部常量,它的值就是HFFFFFF(也就是十进制的16777215),所以不存在转换的问题。建议尽量使用类似vbWhite、vbRed、vbBlue这样的常量来表示颜色,因为它们很直观,即使不懂编程(但懂点英语)的人也知道它们就是白色、红色、蓝色的意思。
你可以自己在VB6的立即窗口验证一下我上面所述是否正确:
Print vbWhite '显示结果为16777215
Print Hex(vbWhite) '显示结果为FFFFFF
补充说一下,颜色的多种表示方式,其实它们最终的值都是相等的,并不需要所谓的转换,比如以下是纯蓝色的多种表示方式:
vbBlue
RGB(0, 0, 255)
HFF0000
16711680
以上这些表示方式,其实它们的值都是一样的,都是等于16711680,你甚至可以拿它们直接来进行数学运算呢!
vbBlue + RGB(0, 0, 255) + HFF0000 + 16711680 = 66846720
66846720 / 4 = 16711680
如果你是想让一个颜色值分解为红绿蓝三原色分量,可以这样:
color1 = vbWhite '这是白色
red = color1 Mod H100 '这是红色分量
green = color1 \ H100 Mod H100 '这是绿色分量
blue = color1 \ H10000 '这是蓝色分量