The Java Program: PanelDemo.java

  1 /*
  2  * <applet code="PanelDemo.class" width=200 height=200></applet>
  3  */
  4 
  5 import java.applet.Applet;
  6 import java.awt.*;
  7 
  8 class GrayCanvas extends Canvas {
  9    Color gray;
 10    public GrayCanvas (float g) {
 11        gray = new Color(g, g, g);
 12    }
 13    public void paint(Graphics g) {
 14       Dimension size = size();
 15       g.setColor(gray);
 16       g.fillRect(0, 0, size.width, size.height);
 17       g.setColor(Color.black);
 18       g.drawRect(0, 0, size.width-1, size.height-1);
 19    }
 20 }
 21 
 22 public class PanelDemo extends Applet {
 23    static final int n = 4;
 24    public void init() {
 25       setLayout(null);
 26       Dimension d = this.size();
 27       int width  = d.width;
 28       int height = d.height;
 29       for (int i = 0; i<n; i++) {
 30          for (int j = 0; j<n; j++) {
 31             float  g = (i*n + j) / (float) (n*n);
 32             Canvas c = new GrayCanvas(g);
 33             add(c);
 34             c.resize (width/n, height/n);
 35             c.move (i*width/n, j*height/n);
 36          }
 37       }
 38    }
 39 }