📄 56.txt
字号:
如何读取 Picture 内任何一点的颜色值?
前言:
Visual Basic 对于定义色彩有二种方法:
1、使用定义的常数:
如色彩属性的设定为红色,可以常数 vbRed 表示
2、直接使用色彩设定:
以十六进位数来指定色彩,方式为: &HBBGGRR&
BB是指定蓝色的部分,GG是指绿色,RR则为指定红色。
每个部分都是两位从 00 到 FF 的十六进位数。中间值为 80。
因此,以下的数值将指定灰色,它属于三种色彩的中间部分:&H808080&
上述二种色彩表示方式对应如下:
色彩常数 值 中文描述 英文描述 色块样板
vbRed &H0000FF& 红色 Red
vbGreen &H00FF00& 绿色 Green
vbBlue &HFF0000& 蓝色 Blue
vbBlack &H000000& 黑色 Black
vbYellow &H00FFFF& 黄色 (红+绿) Yellow
vbMagenta &HFF00FF& 洋红色 (红+蓝) Magenta
Cyan &HFFFF00& 青绿色 (绿+蓝) Cyan
vbWhite &HFFFFFF& 白色 White
上述第 2 种方法,可以衍生出『若知道一值,则如何反算其红、绿、蓝颜色值各为何?』的问题。其计算方法则是反其道而行,计算顺序为首先计算蓝色值、其次为绿色值、最后为红色值。写成模块如下:
Private Sub ReturnRGB(ByVal lngColor As Long, intRed As Integer, intGreen As Integer, intBlue As Integer)
intRed = lngColor Mod 256
intGreen = (lngColor \ 256) Mod 256
intBlue = lngColor \ 256 \ 256
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -