However, if you want to change the color of the text or GUI components, Java provides the Color class contained in java.awt.package. Every color is made up of red, green and blue components, each represented by an unsigned byte value that describes its intensity. You can specify the intensity of each color to be a value ranging from 0 to 255 where 0 represents the darkest shade and 255 represents the lightest shade. This is known as RGB model.
In order to create a Color object use the following constructors.
• public Color (int r, int g, int b) : The three parameters r, g, b correspond to the intensities of red, green and blue components of the Color respectively. The values that these parameters can hold range from 0 to 255. If you specify a value beyond this range then an IllegalArgumentException exception will be raised. For example: The statement.
Color c = newColor (255,200,0);
creates a Color object that represent the color orange. The first RGB component (i.e. 255) represents the amount of red, the second (i.e. 200) represents the amount of green and the third(i.e. 0) represents the amount of blue. Together these components form the orange color.
• public Color(float r, float g, float b): The three parameters r,g,b correspond to the intensities of red, green and blue components that can be represented by floating-point values in the range 0.0.to 1.0.
Color Interface
Method | Returns | Notes |
Color(float r, float g, float b) | Each constructor has the same range of colors but receives them in various formats | |
Color(int rgb) |
|
|
Color(int r, int g, int b) |
|
|
brighter() | Color | The returned color is brighter by some color model specific amount |
darker() | Color | The returned color is darker brighter by some color model specific amount |
equals(Object obj) | Boolean | Is the passed object a color that has the same RGB component? |
getBlue() | Int | Gets the blue component of this color object |
getColor(String name) | Static Color | Looks up the “name” in the system properties and converts the property into a color |
getColor(String name, Color c) | Static Color | Looks up the “name” in the system properties and converts the property into a color; if the property doesn’t exist, returns the passed color |
getColor(String name, int rgb) | Static Color | Looks up the “name” in the system properties and converts the property into a color; if the property doesn’t exist, returns a color that matches the passed int (in RGB format) |
getGreen() | Int | Gets the green component of this color object |
getHSBColor(float h, float s, float b) | Static Color | Returns a color that represents the passed hue, saturation, and brightness |
getRed() | Int | Gets the red component of this color object |
getRGB() | Int | Returns a 32-bit color where all components are in the range 0-255, red is in bits 16-23, green in 8-15, and blue is in 0-7 |
HSBtoRGB(float h, float s, float b) | Int | Same as HSBcolor(), except returns the color as an int in RGB format |
RGBtoHSB(int r, int g, int b, float hsbvals[]) | Static float[] | Converts the passed integer color components to HSB form; if hsbvals is null, creates a new array of floats for the result; if a float array is passed for hsbvals, updates the passed array with the hue, saturation, and brightness |
import java.awt.*;
class ColorExample extends Frame
{
ColorExample()
{
Color frameColor = new Color(0,255,255);
setLayout(new FlowLayout());
setBackground(frameColor);
Button btnCancel = new Button("Cancel");
btnCancel.setBackground(Color.BLACK);
btnCancel.setForeground(Color.WHITE);
add(btnCancel);
}
}
class ColorJavaExample
{
public static void main(String args[])
{
ColorExample frame = new ColorExample();
frame.setTitle("Color in Java Example");
frame.setSize(400,150);
frame.setVisible(true);
}
}