|
主题: 关于颜色对象的问题
|
 求可知
职务:普通成员
等级:3
金币:10.0
发贴:718
|
#12002/6/10 20:15:59
常常看见一些原码里 有myColor.setRGB(128 << 16 | 159 << 8 | 178) 那为什么不直接用16进指表示呢?
|
 janlay
职务:管理员
等级:7
金币:28.0
发贴:7244
|
#22002/6/10 20:44:23
各有各的写法,这个数值一般是从别的地方获取的,如果刚好得到了一个十进制的数,再转成16进制岂不麻烦
|
 求可知
职务:普通成员
等级:3
金币:10.0
发贴:718
|
#32002/6/13 16:39:40
斑竹说的对 那么有没有办法将16进制 比如:mycolor.setrgb(0xxxxxxxxx) 转换成mycolor.setrgb(r<<16|g<<8|b)呢?
|
 5D荣誉斑竹
职务:普通成员
等级:2
金币:2.0
发贴:617
|
#42002/6/13 17:06:53
可能需要自己写一个数值转换的算法 将10进制转换成为16进制,方法大概就是先对其取余,存入数组,在剩下的数求模,如此循环到数字取模为0为止。然后再用数组倒序输出,switch判断10为"A"11为"B",12为"C"以此类推到15为"F",顺序输出存成字符串。8进制,2进制都可以用此法求出。
编辑历史:[这消息被桃人编辑过(编辑时间2002-06-13 17:08:40)]
|
 求可知
职务:普通成员
等级:3
金币:10.0
发贴:718
|
#52002/6/13 17:08:19
是吗? 看来挺复杂的:-)
|
 janlay
职务:管理员
等级:7
金币:28.0
发贴:7244
|
#62002/6/13 23:08:00
求可知在上个帖子中说 引用: 斑竹说的对 那么有没有办法将16进制 比如:mycolor.setrgb(0xxxxxxxxx) 转换成mycolor.setrgb(r<<16|g<<8|b)呢?
这样啊,如果有0xaabbcc,直接写就行了: aa<<16 | bb<<8 | cc
|
 求可知
职务:普通成员
等级:3
金币:10.0
发贴:718
|
#72002/6/15 16:59:39
但不合哪些作图人的习惯啊:-0
|
 janlay
职务:管理员
等级:7
金币:28.0
发贴:7244
|
#82002/6/15 20:59:09
 不太明白你的意思,你到底要什么效果?
|
 求可知
职务:普通成员
等级:3
金币:10.0
发贴:718
|
#92002/6/16 8:14:49
求可知在上个帖子中说 引用: 但不合哪些作图人的习惯啊:-0
大错字了:-) 我的意思是一般经常作图的人 比如用photoshop的人,还是习惯用red,green,blur来表示颜色
|