如何使用此Color的构造函数? Java

问题描述

| 根据Oracle的站点,Color类具有一个构造函数,该构造函数接受单个表示RGB值的int值。 http://download.oracle.com/javase/1.4.2/docs/api/java/awt/Color.html#Color(int) RGB颜色实际上是0-255之间的三个不同数字。因此,将它们组合在一起以形成一个int看起来像这样:
White 255,255,255
White 255255255 
对?所以我将其传递给构造函数,并获得鲜艳的蓝绿色。我究竟做错了什么?我不明白什么?     

解决方法

从将RGB值转换为整数
int rgb = red;
rgb = (rgb << 8) + green;
rgb = (rgb << 8) + blue;
提取值:
int red = (rgb >> 16) & 0xFF;
int green = (rgb >> 8) & 0xFF;
int blue = rgb & 0xFF;
    ,来自其他构造函数的Javadoc:   使用创建一个sRGB颜色   指定的RGBA组合值   由中的alpha分量组成   位24-31,红色位   16-23,绿色分量(以位为单位)   8-15,蓝色分量(以位为单位)   0-7。如果hasalpha参数是   false,默认值为255。 因此,您只需要使用位操作来构造int。     ,
Color col=new Color(255,255,255);
Label l1=new Label(\"I got this color\");
//在标签背景中设置颜色
l1.setBackground(col);
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...