在VB中如何读取 Picture 内任何一点的颜色值?

 我来答
匿名用户
2013-12-14
展开全部
print Picture1.point(x,y)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-14
展开全部
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
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式