Color Demos

See Color.

ShowColors1

// ShowColors1.java
// Demonstrating Colors
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class ShowColors1 extends JPanel {

	public ShowColors1()
	{
		Color c;
	  // set new drawing color using integers
		c =  new Color( 255, 0, 0 );
		show_color(c, "Current RGB: " + c); 

	  // set new drawing color using floats
		c = new Color( 0.0f, 1.0f, 0.0f );
		show_color(c, "Current RGB: " + c);

	  // set new drawing color using static Color objects
		c = Color.blue;
		show_color(c, "Current RGB: " + c);

	  // display individual RGB values
		c = Color.magenta;
		show_color(c, "RGB values: " + c.getRed() + ", " +
				   c.getGreen() + ", " + c.getBlue());
	}

	
   public void show_color(Color c, String name)
   {
	   JPanel color_pane = new JPanel();
	   color_pane.setPreferredSize(new Dimension(100,20));
	   color_pane.setBackground(c);
	   add(color_pane);
	   add(new JLabel(name));
   }
   

   public static void main( String args[] )
   {
	   JFrame frame = new JFrame("Using colors" );
	   ShowColors1 panel = new ShowColors1();

	   frame.setSize( 400, 130 );
	   Container c = frame.getContentPane();
	   c.add(panel);
	   frame.show();

      frame.addWindowListener(
         new WindowAdapter() {
            public void windowClosing( WindowEvent e )
            {
               System.exit( 0 );
            }
         }
      );
   }
}

ShowColors2

// ShowColors2.java
// Demonstrating JColorChooser
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class ShowColors2 extends JPanel {
   private JButton changeColor;
   private Color color = Color.lightGray;
   private Container c;
   static private JFrame frame;

   public ShowColors2()
   {
	   c = this;
      //setLayout( new FlowLayout() );

      changeColor = new JButton( "Change Color" );
      changeColor.addActionListener(
         new ActionListener() {
            public void actionPerformed( ActionEvent e )
            {
               color =
                  JColorChooser.showDialog( ShowColors2.this,
                     "Choose a color", color );

               if ( color == null )
                  color = Color.lightGray;

               c.setBackground( color );
               c.repaint();
            }
         }
      );
      add( changeColor );
   }

   public static void main( String args[] )
   {
	   frame = new JFrame( "Using JColorChooser" );
	   ShowColors2 panel = new ShowColors2();

	   frame.setSize( 400, 130 );
	   Container c = frame.getContentPane();
	   c.add(panel);
	   frame.show();

      frame.addWindowListener(
         new WindowAdapter() {
            public void windowClosing( WindowEvent e )
            {
               System.exit( 0 );
            }
         }
      );
   }
}

StaticColors

// StaticColors.java
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class StaticColors extends JPanel {

	public StaticColors()
	{
		Color c;
		//Dimension d = new Dimension(250,450);
		//setPreferredSize(d);
		setLayout(new GridLayout(13,2,10,5));
		show_color(Color.black, "black");
		show_color(Color.blue, "blue");
		show_color(Color.cyan, "cyan");
		show_color(Color.darkGray, "darkGray");
		show_color(Color.gray, "gray");
		show_color(Color.green, "green");
		show_color(Color.lightGray, "lightGray");
		show_color(Color.magenta, "magenta");
		show_color(Color.orange, "orange");
		show_color(Color.pink, "pink");
		show_color(Color.red, "red");
		show_color(Color.white, "white");
		show_color(Color.yellow, "yellow");
	}

	
   public void show_color(Color c, String name)
   {
	   JPanel color_pane = new JPanel();
	   color_pane.setPreferredSize(new Dimension(100,20));
	   color_pane.setBackground(c);
	   add(color_pane);
	   add(new JLabel(name + "  " + Integer.toHexString(c.getRed()) + ", " +
					  Integer.toHexString(c.getGreen()) + ", " +
					  Integer.toHexString(c.getBlue())));
   }
   

   public static void main( String args[] )
   {
	   JFrame frame = new JFrame("Static Colors" );
	   JPanel panel = new StaticColors();

	   frame.setSize( 320, 540 );
	   Container c = frame.getContentPane();
	   c.add(panel);
	   frame.show();

      frame.addWindowListener(
         new WindowAdapter() {
            public void windowClosing( WindowEvent e )
            {
               System.exit( 0 );
            }
         }
      );
   }
}


Maintained by John Loomis, last updated 1 June 2000