注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

沉默蜂B4A安卓编程

国内资料最全的B4A资料库

 
 
 

日志

 
 

[代码]得到红绿蓝各自的值  

2015-09-06 11:36:34|  分类: B.图形 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一组函数来赞美Colors.ARGB()函数 
代码:
Dim mycolor As Int
Dim a,r,g,b As Int

mycolor=
Colors.ARGB(240,124,15,23)
a=
Colors.GetA(mycolor)
r=
Colors.GetR(mycolor)
g=
Colors.GetG(mycolor)
b=
Colors.GetB(mycolor)
另外, 
代码:
a=Colors.GetAlpha(mycolor)
r=
Colors.GetRed(mycolor)
g=
Colors.GetGreen(mycolor)
b=
Colors.GetBlue(mycolor)


从其他一些代码我有方法 
代码:
a=(mycolor & 0xff00000) ShiftRight 24
r=(mycolor & 
0xff000) ShiftRight 16
g=(mycolor & 
0xff00) ShiftRight 8
b=(mycolor & 
0xff)


代码:
Sub Activity_Create(FirstTime As Boolean)
    
Dim argb() As Int
    argb = GetARGB(
Colors.Transparent)
    
Log("A = " & argb(0))
    
Log("R = " & argb(1))
    
Log("G = " & argb(2))
    
Log("B = " & argb(3))
End Sub

Sub GetARGB(Color As Int) As Int()
    
Dim res(4As Int
    res(
0) = Bit.UnsignedShiftRight(Bit.And(Color, 0xff000000), 24)
    res(
1) = Bit.UnsignedShiftRight(Bit.And(Color, 0xff0000), 16)
    res(
2) = Bit.UnsignedShiftRight(Bit.And(Color, 0xff00), 8)
    res(
3) = Bit.And(Color, 0xff)
    
Return res
End Sub




  评论这张
 
阅读(70)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017