VB颜色全接触

软件世界

我们在用VB进行编程时,窗体、控件、文字、图形等都要用到各种颜色。总结起来,在VB中,一共有下面五种颜色调整方案。

一、预定义的颜色常数

我们经常使用的8种颜色,只要用几个单词就可表示出来,这八种颜色是彩虹的六种颜色加上黑色和白色,只要在前缀字符vb后加上相应颜色的英文单词,就可表达出来了((图1))。

图1
图1

假设我们要将窗体的背景设为黑色,只要执行下面的语句就行了:
me.BackColor=vbBlack
就这么简单,这种用法易记好用,但可用颜色太少。

二、QBColor函数颜色

有不少用VB编程的朋友是从BASIC语言转过来的,可能是老盖为了团结这批朋友吧,将在QB中常使用的颜色给带到了VB中。QB颜色主要是和VGA的十六种颜色对应,只有十六种值,它们是0~15,各个值和颜色的对应关系如(图2)

图2
图2

所以上面的小例也可写成这样:
me.BackColor=QBColor(0)

三、RGB函数颜色值

RGB三个字母,分别代表了Red、Green、Blue三种颜色,此三种色可称为“原色”,在计算机中,通过这三种色的不同组合,可得到各式各样的颜色。每种颜色有256种颜色值,取值范围是0~255,由此我们可以看出此法表示的颜色数目较上面两种方法大有增加,一共能表达256×256×256种颜色。
其中几种常见的颜色用RGB表示如下
黑色:RGB(0,0,0)
红色:RGB(255,0,0)
白色:RGB(255,255,255)
所以上面的小例又可写成:
me.BackColor=RGB(0,0,0)

四、十六进制数颜色值

顾名思义,就是用十六进制数来表示颜色的方式。在VB窗体或控件的颜色调整中我们就用到过,那一堆以&H开头的东东即是它了。十六进制和RGB值是一一对应的,只要将RGB的各个值换算成两位的十六进制数,一个十六进制的颜色值就出现了。例如上面的黑色的十六进制值为&H0,红色的为&HFF0000,白色的当然就是:&HFFFFFF了。
所以上面的小例又可写成:
me.BackColor=&H0

五、系统调整法

要想调整VB中程序的颜色,当然控制的方法不仅仅在VB中,设置操作系统中相应的项目,也能使我们编辑的应用程序变脸。我们通过“控制面板”中的“显示”,调整其中的“外观”,可设置不同的方案,调整“设置”,可选择本机中使用的颜色总数目。如果选择16色,那我们编程时使用QBColor就足够了,且注意真彩24位的颜色数目为2的24次方,那将是一个很大的数值。

六、使用颜色时的注意事项

不管使用哪种表示方法,颜色所达到的效果是一致的。
不过颜色有多寡的区分,这和我们使用的机器中“显示”属性密切相关,只有在相适应的颜色系统下,才能使更多的颜色效果显示出来,例如我们在16色有显示状态下,不可能将RGB中所有的颜色表达出来,最多只能表达出十六种颜色,根据这种情况,我们可得出如下的结论:只要我们在真彩24位的系统环境和该环境之下,RGB应该能解决我们想用的一切颜色。