September 24, 2004

The Color Swatch Applet



/*
 A simple Color Swatch Applet
 */
import java.awt.*;
import java.applet.Applet;
import java.awt.event.*;


public class ColorSwatch extends Applet implements AdjustmentListener
{
   // GUI Widgets
   
   // Labels
   Label redLabel, greenLabel, blueLabel;
   
   // Sliders
   Scrollbar redBar, greenBar, blueBar;
   
   /// values of colors
   int red, green, blue;
   
   public void init() {
      // add GUI
      // Create Labels
      redLabel = new Label("Red:");
      greenLabel = new Label("Green:");
      blueLabel = new Label("Blue:");
   
      // create sliders
      redBar = new Scrollbar(Scrollbar.HORIZONTAL, 100, 1, 0, 256);
      blueBar = new Scrollbar(Scrollbar.HORIZONTAL, 100, 1, 0, 256);
      greenBar = new Scrollbar(Scrollbar.HORIZONTAL, 100, 1, 0, 256);
   
      // add widgets to applet
      add(redLabel);
      add(redBar);
      add(greenLabel);
      add(greenBar);
      add(blueLabel);
      add(blueBar);
   
      // add listeners
      redBar.addAdjustmentListener(this);
      greenBar.addAdjustmentListener(this);
      blueBar.addAdjustmentListener(this);
   
      // set the initial values of colors
      red = 100;
      green = 100;
      blue = 100;
   } // init
   
   public void paint(Graphics g) {
   
      // set the color of the applet
      setBackground(new Color(red, green, blue));
   
      // display color values
      //g.setColor(Color.white);
      //g.fillRect(0, 120, 100, 80);
   
      g.setColor(new Color(255-red, 255-green, 255-blue));
      g.drawString("red = "+red, 20, 140);
      g.drawString("green = "+green, 20, 160);
      g.drawString("blue = "+blue, 20, 180);
   
   } // paint
   
   // listener method
   public void adjustmentValueChanged(AdjustmentEvent e) {
   
      red = redBar.getValue();
      green = greenBar.getValue();
      blue = blueBar.getValue();
   
      repaint();
   } // adjustmentValueChanged
   
   
} // ColorSwatch
 

Back to class exmaples | Back to CS110 Materials page