VB中的颜色设置.docx

上传人:b****2 文档编号:3411138 上传时间:2023-05-05 格式:DOCX 页数:10 大小:53.11KB
下载 相关 举报
VB中的颜色设置.docx_第1页
第1页 / 共10页
VB中的颜色设置.docx_第2页
第2页 / 共10页
VB中的颜色设置.docx_第3页
第3页 / 共10页
VB中的颜色设置.docx_第4页
第4页 / 共10页
VB中的颜色设置.docx_第5页
第5页 / 共10页
VB中的颜色设置.docx_第6页
第6页 / 共10页
VB中的颜色设置.docx_第7页
第7页 / 共10页
VB中的颜色设置.docx_第8页
第8页 / 共10页
VB中的颜色设置.docx_第9页
第9页 / 共10页
VB中的颜色设置.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

VB中的颜色设置.docx

《VB中的颜色设置.docx》由会员分享,可在线阅读,更多相关《VB中的颜色设置.docx(10页珍藏版)》请在冰点文库上搜索。

VB中的颜色设置.docx

VB中的颜色设置

VB中的颜色设置

界面上的彩色图形能够产生更强的视觉效果,因而越来越受到用户的重视。

在VisualBasic中,窗体、控件、图形以及文字信息都可以用不同的颜色显示。

对于所有的颜色属性和图形方法,每种颜色都由一个Long整数表示。

基于具有能处理256色或256色以上的视频适配器和显示驱动程序的系统,VisualBasic可支持256种颜色。

对于多媒体应用程序,或对于那些需要显示接近相片质量图像的应用程序来说,具有同时显示256色的功能是特别有价值的。

VisualBasic中的许多控件,有决定控件显示颜色的属性。

请记住,这些属性中有些也适用于不是图形的控件。

BackColor:

对用于绘画的窗体或控件设置背景颜色。

如果在绘图方法进行绘图之后改变BackColor属性,则已有的图形将会被新的背景颜色所覆盖。

ForeColor:

设置绘图方法在窗体或控件中创建文本或图形的颜色。

改变ForeColor属性不影响已创建的文本或图形。

BorderColor:

给形状控件边框设置颜色。

FillColor:

为用Circle方法创建的圆和用Line方法创建的方框,设置填充颜色。

一、调色板

在VB应用程序的界面设计阶段,使用调色板能够可视化地设置当前对象的颜色。

打开调色板的方法有两种:

(1)          从属性窗口找到要设置的颜色属性,单击右端的向下箭头,就弹出一个如图11-14所示的调色板,可以可视化地设定颜色。

 

                                                                         图11-15VB的调色板

(2)另一种方法是从VB集成环境的“视图”菜单中选取“调色板”(图11-15)。

这个调色板具有更强的颜色设置功能。

它既可以设置对象的前景色、背景色,也可以进行细致的颜色调整。

图11-16颜色定义框

单击调色板左上方的设置选择框可以选定设置前景色或背景色。

这个选择框的下方右一个标有“Aa”的小方框是效果显示框。

如果觉得调色板现有的缺省颜色不够满意,可以双击第4排中的任一个小空格(或单击,然后再击“定义颜色”按钮),将弹出一个颜色定义框(图11-16)。

可以用鼠标拖动色板上带有4个黑色小方块的颜色游标和右边量度条上的三角形游标,观察效果显示框的颜色变化。

直到取得满意的颜色,单击“添加颜色按钮”,定义的颜色就出现在调色板的空格中。

这种颜色就成为可用颜色了。

当然,直接从颜色定义框的“色调”、“饱和度”、“亮度”等文本框中直接输入数据也可以定义颜色。

二、颜色参数

用调色板可以在设计阶段设置窗体或控件的颜色。

如果想在程序运行期间设置对象的颜色,就必须使用颜色参数。

在运行时指定颜色参数值的方式有四种:

(1)使用RGB函数

(2)使用QBColor函数。

(3)使用在VB的颜色常数。

(4)直接输入颜色值。

 

1.RGB函数

RGB是Red(红)Green(绿)Blue(蓝)的缩写,RGB函数通过三原色的值设置一种混合颜色。

RGB函数格式如下:

RGB(<红色值>,<绿色值>,<蓝色值>)

这里的<红色值>、<绿色值>、<蓝色值>均为整数,取值范围为0~255,代表混合颜色中每一种原色的分量(亮度)。

0表示亮度最低,255表示亮度最高。

如果颜色参数值超过255,会被当作255。

RGB函数由三个参数经数学组合而产生的一个Long整数值,表示一个特定的颜色值,其范围在0~16777215。

也就是说,从理论上RGB函数最多可以表示16777216种颜色,但实际上会受到系统硬件的限制。

标准CGA显示器只能同时显示16种颜色,EGA显示器支持64色、VGA显示器可显示256色。

和实际画图时一样,用红、绿、蓝三原色可以“配出”各种颜色。

例如,红、绿混合可以得到黄色,最亮的黄色用RGB函数表示为“RGB(255,255,0)”,0表示没有蓝色。

再如,白色被表示为“RGB(255,255,255)”,而“RGB(128,128,128)”表示中灰色等等。

表11-8列示了部分常见的标准颜色,以及这些颜色的红、绿、蓝三原色的成份。

表11-8常见标准颜色的RGB值

颜色

红色值

绿色值

蓝色值

黑色

0

0

0

蓝色

0

0

225

绿色

0

255

0

青色

0

255

255

红色

255

0

0

洋红色

255

0

255

黄色

255

255

0

白色

255

255

255

 

 

 

 

例如:

Form1.BackColor=RGB(0,128,0)'设定背景为绿色

Form2.BackColor=RGB(255,255,0)'设定背景为黄色

PSet(100,100),RGB(0,0,64)'设指定点为深蓝色

用Point方法,可以返回在窗体或图片框上所指定点的RGB颜色值。

格式:

[<对象名>.]Point(x,y)

例11.11本例使用Point方法来确定一个窗体上的一个指定点的颜色。

PrivateSubForm_Click()

DimLeftColor,MidColor,Msg,RightColor'声明变量

AutoRedraw=-1'打开AutoRedraw

Height=3*1440'将高度设置为3英寸

Width=5*1440'将宽度设置为5英寸

BackColor=QBColor

(1)'将背景设置为蓝色。

ForeColor=QBColor(4)'将前景设置为红色

Line(0,0)-(Width/3,Height),,BF'红框

ForeColor=QBColor(15)'将前景设置为白色

Line(Width/3,0)-((Width/3)*2,Height),,BF

LeftColor=Point(0,0)'查找左框颜色

MidColor=Point(Width/2,Height/2)'查找中框颜色

RightColor=Point(Width,Height)'查找右框颜色

Msg="Thecolornumberfortheredboxontheleftsideof"

Msg=Msg&"theformis"&LeftColor&".The"

Msg=Msg&"colorofthewhiteboxinthecenteris"

Msg=Msg&MidColor&".Thecoloroftheblue"

Msg=Msg&"boxontherightis"&RightColor&"."

MsgBoxMsg'显示信息

EndSub

 

2.QBColor函数

VisualBasic保留了QuickBSAIC的QBColor函数。

该函数用一个整数值对应RGB的常用颜色值。

QBColor函数的格式如下:

QBColor<颜色值>

其中“颜色值”的取值范围是0~15,共可表示16种颜色,见表11-9。

表11-9QBColor函数取值

QB颜色值

颜色

对应RGB颜色值

0

黑色

RGB(0,0,0)

1

蓝色

RGB(0,0,191)

2

绿色

RGB(0,191,0)

3

青色

RGB(0,191,191)

4

红色

RGB(191,0,0)

5

洋红色

RGB(191,0,191)

6

黄色

RGB(191,191,0)

7

白色

RGB(191,191,191)

8

灰色

RGB(64,64,64)

9

亮蓝色

RGB(0,0,255)

10

亮绿色

RGB(0,255,0)

11

亮青色

RGB(0,255,255)

12

亮红色

RGB(255,0,0)

13

亮洋红色

RGB(255,0,255)

14

亮黄色

RGB(255,255,0)

15

亮白色

RGB(255,255,255)

 

例11.12本例使用QBColor函数将MyForm窗体的BackColor属性,改成ColorCode参数指定的色彩。

SubChangeBackColor(ColorCodeAsInteger,MyFormAsForm)

MyForm.BackColor=QBColor(ColorCode)

EndSub

 

3.颜色常数

VisualBasic定义了一些颜色符号常数,包括8种常用颜色和Windows控制面板使用的系统颜色。

使用系统常量,可以使应用程序的风格与Windows控制面板类似,因而更具专业化。

这些常量的用法与前面介绍的相同。

这些常用颜色和系统颜色的对应值由表11-10和表11-11列出。

表11-10系统颜色常量

符号常数

描述

VbScrollBars

&H80000000

滚动条颜色

VbDesktop

&H80000001

桌面颜色

VbActiveTitleBar

&H80000002

活动窗口标题栏颜色

VbInactiveTitleBar

&H80000003

非活动窗口标题栏颜色

VbMenuBar

&H80000004

菜单背景颜色

VbWindowBackground

&H80000005

窗口背景颜色

VbWindowFrame

&H80000006

窗口框架颜色

VbMenuText

&H80000007

菜单上文字的颜色

VbWindowText

&H80000008

窗口内文字的颜色

VbTitleBarText

&H80000009

标题,尺寸框和滚动箭头内文字的颜色

VbActiveBorder

&H8000000A

活动窗口边框的颜色

VbInactiveBorder

&H8000000B

非活动窗口边框的颜色

VbApplicationWorkspace

&H8000000C

多文档界面(MDI)应用程序的背景颜色

VbHighlight

&H8000000D

控件内选中项的背景颜色

VbHighlightText

&H8000000E

控件内选中项的文字颜色

VbButtonFace

&H8000000F

绘在命令按钮正面的颜色

VbButtonShadow

&H80000010

绘在命令按钮边缘的颜色

VbGrayText

&H80000011

变灰的(无效的)文字

VbButtonText

&H80000012

揿压按钮上文字的颜色

VbInactiveCaptionText

&H80000013

非活动标题内文字的颜色

vb3DHighlight

&H80000014

三维显示元素的高亮颜色

vb3DDKShadow

&H80000015

三维显示元素的最暗阴影颜色

vb3DLight

&H80000016

低于vb3Dhighlight的三维次高亮颜色

vb3DFace

&H8000000F

文字表面的颜色

vb3DShadow

&H80000010

文字阴影的颜色

VbInfoText

&H80000017

提示窗内文字的颜色

VbInfoBackground

&H80000018

提示窗内背景的颜色

表11-11常用颜色常量

文字常数

颜色

vbBlack

&H0

黑色

vbRed

&HFF

红色

vbGreen

&HFF00

绿色

vbYellow

&HFFFF

黄色

vbBlue

&HFF0000

兰色

vbMagenta

&HFF00FF

洋红

vbCyan

&HFFFF00

青色

vbWhite

&HFFFFFF

白色

 

4.直接使用颜色设置值

使用RGB函数QBColor函数和系统内部颜色常数来指定颜色都不是直接的,因为VisualBasic只是将它们解释为与它所代表的颜色比较接近的一种颜色。

如果程序员清楚地知道VB是如何用数值来指定颜色,就可以给颜色参数和属性指定一个准确值直接指定颜色。

通常用十六进制数表示颜色值。

正常的RGB颜色的有效范围是从0到16777215(&HFFFFFF&)。

每种颜色的设置值(属性或参数)都是一个四字节的整数。

对于这个范围内的数,其高字节都是0,而低三个字节,从最低字节到第三个字节,分别定义了红、绿、蓝三种颜色的值。

红、绿、蓝三种成分都是用0到255(&HFF)之间的数表示。

因此,可以用十六进制数按照下述语法来指定颜色:

&HBBGGRR&

其中:

BB指定蓝颜色的值;

GG指定绿颜色的值;

RR指定红颜色的值。

每个数段都是两位十六进制数,即从00到FF。

中间值是80。

因此,下面的数值是这三种颜色的中间值,指定了灰颜色:

&H808080&

在Windows工作环境中,每一种颜色具有特定的意义。

这些颜色称为系统颜色,对应的颜色数值范围从&H80000000到&H80000015。

每一种系统颜色,既有所定义的常数也有直接的颜色设置值。

对系统颜色来说,其直接颜色设置值的高位字节与普通RGB颜色的高位字节是不同的。

对于RGB颜色来说,其高位字节为0,而对于系统颜色来说,其高位字节为80,剩下的数字则指示某一特定的系统颜色(见表11-10)。

例如:

&H80000002&这个十六进制数,表示为一个活动窗口的标题颜色。

设计时,通过属性窗口选择颜色属性时,选择“系统”选项卡,就能够选择系统设置值,VB将其自动转换成十六进制值。

也可在“对象浏览器”中寻找系统颜色的定义常数。

以上介绍了颜色参数的4种使用方式,程序员可以根据自己的需要选定。

例11·13该例用不同的方式使用颜色参数,画出4个矩形。

运行结果如图11-17所示。

OptionExplicit

PrivateSubForm_Click()

DimoffsetxAsInteger,offsetyAsInteger

offsetx=150

offsety=150

Line(100,100)-Step(offsetx,offsety),QBColor

(1),BF

Line-Step(offsetx*2,offsety*2),RGB(0,255,0),BF

Line-Step(offsetx*3,offsety*3),vbRed,BF

Line-Step(offsetx*4,offsety*4),&HFFFF&,BF

EndSub

图11-17用不同形式颜色参数画图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2