标题一个获取颜色分量值的VB程序
栏目软件世界
作者元晋豫
发布1998年第25期13版
在开发应用软件时,常常需要对一些图形、区域、字符等设置一种恰当的颜色,使用户界面更加美观。有时因系统提供的颜色种类不能满足设计者的需要,就需调用RGB()函数来完成设计要求,但红、绿、蓝三种颜色分量值各设置多少才能符合需要呢?显然靠估计需要一遍遍的调试程序,很麻烦,为此笔者用VB5编制了一个获取颜色分量值的程序,为软件设计者准确选取颜色值提供了一个方便简捷的途径。下面介绍实现步骤:
步骤一:启动VB5,新建一窗体,取默认名称Form1,设置属性为“获取颜色分量值”。
步骤二:在窗体正上方创建一个标签Label1,名称设置为ColorLabel,Caption设置为空,BorderStyle设置为1。
步骤三:连续创建三个文本框,调整大小和位置,使它们按水平方向均匀排列在标签下方,名称分别为RedText、GreenText和BlueText,Caption属性都设为空。
步骤四:连续创建三个水平滚动条,调整大小和位置,使它们按水平方向均匀排列在三个文本框相对应的正下方,名称分别为RedHScroll、GreenHScroll和BlueHScroll,Max属性都设为255,Min属性都设为0,SmallChang属性都设为1,LargeChange属性都设为10。
步骤五:在窗体模块Form1.frm中填入下列代码:
Private Sub Form_ Load()
RedHScroll.Value=192
GreenHScroll.Value=192
BlueHScroll.Value=192
ColorLabel.BackColor=RGB(192,192,192)
End Sub
Private Sub BlueHScroll_ Change()
ChangeColor
BlueText.Text="B="+CStr(BlueHScroll.Value)
End Sub
Private Sub GreenHScroll_ Change()
ChangeColor
GreenText.Text="G="+CStr(GreenHScroll.Value)
End Sub
Private Sub RedHScroll_Change()
ChangeColor
RedText.Text="R="+CStr(RedHScroll.Value)
End Sub
Private Sub ChangeColor()
ColorLabel.BackColor=RGB(RedHScroll.Value,GreenHScroll.Value,BlueHScroll.Value)
End Sub
本程序运行后,调节R、G、B三个滚动条,当标签区域显示的颜色达到所需值时,三个文本框中数值即为红、绿、蓝颜色分量值。