作者fumizuki (蒙面加菲狮)
看板Visual_Basic
标题Re: 如何让颜色数值增加??
时间Sun Oct 21 22:14:51 2007
※ 引述《concealment (笨小孩)》之铭言:
: 引述《blackAIX (蛋蛋的忧愁)》之铭言:
: : Dim tmpColor As Long, redColor As Integer
: : tmpColor = Label1.BackColor '取出数值
: : redColor = tmpColor And 255 '只取出红色
: : redColor = (redColor + 5) And 255 '把红色+5并且限制255之内
: : Label1.BackColor = (tmpColor And &HFFFF00) + redColor '其他颜色不变.红色放回去
: 若是要加红色,则直接加即可,
: 加绿色则要加在中间
: 加蓝色则要加在前面
: 基本上VB的颜色格式是这样的
: &HAABBGGRR
: AA是Alpha
: BB就是蓝色
: GG就是绿色
: RR就是红色
: 且都是用16进位表示
应该是没有ABGR的@@a
VB6 是BGR
VB2005是ARGB
VB2005 可以使用 Color.FromArgb(A, R, G, B) 来表示色彩
亦可使用 color.A 、 color.R 、 color.G 、 color.B 来取得三原色及 Alpha 值
实验过的喔
VB6
Debug.Print Hex(vbRed)
结果是 FF
VB2005
Debug.Print(Hex(Color.Red.ToArgb))
结果是 FFFF0000
同2码是alpha 第3、4码是红色
不过 VB2005 是有一个跟 VB6 一样的 RGB() 函数,红色的传回值亦等於 255
但是使用这个函数来指定控制项的前景背景色彩会建置失败@@a
有高手要说明2005的 RGB() 函数吗@@a
--
▃▅▇▆▄ ▆▂▃ `
逝去感情如何能留住,半点痴情遗留殊不易,██▅▇▄▃ ▇▃▂" .
█████████▃i ▁▄▇
更多凄凄惨惨的遭遇…………██▆▃ █▅▆▃ˍ▄*
◢ ▂█▄▇▅▂▌.
我不知道,王~八~蛋~~! ▂▆███ █▄▃ 。fumizuki。Check。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.194.100.4
1F:推 fire2:版主耶~ 10/21 22:24
2F:推 mindscold:出动老大了?! 10/23 17:18