home *** CD-ROM | disk | FTP | other *** search
/ Java by Example / jbecd.bin / JBE-CD / NTUsers / JBECODE.ZIP / JavaByExample / chap16 / ShapeApplet.class (.txt) < prev    next >
Encoding:
Java Class File  |  1996-02-20  |  1.3 KB  |  58 lines

  1. import java.applet.Applet;
  2. import java.awt.Button;
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Event;
  6. import java.awt.Graphics;
  7.  
  8. public class ShapeApplet extends Applet {
  9.    int shape;
  10.    Button button;
  11.  
  12.    public void init() {
  13.       this.shape = 0;
  14.       this.button = new Button("Next Shape");
  15.       ((Container)this).add(this.button);
  16.    }
  17.  
  18.    public void paint(Graphics var1) {
  19.       int[] var2 = new int[]{35, 150, 60, 140, 60, 150, 35};
  20.       int[] var3 = new int[]{50, 80, 110, 140, 170, 200, 230};
  21.       byte var4 = 7;
  22.       switch (this.shape) {
  23.          case 0:
  24.             var1.drawLine(35, 50, 160, 230);
  25.             return;
  26.          case 1:
  27.             var1.drawRect(35, 50, 125, 180);
  28.             return;
  29.          case 2:
  30.             var1.drawRoundRect(35, 50, 125, 180, 15, 15);
  31.             return;
  32.          case 3:
  33.             var1.drawOval(35, 50, 125, 180);
  34.             return;
  35.          case 4:
  36.             var1.drawArc(35, 50, 125, 180, 90, 180);
  37.             return;
  38.          case 5:
  39.             var1.drawPolygon(var2, var3, var4);
  40.             return;
  41.          case 6:
  42.             var1.fillPolygon(var2, var3, var4);
  43.             return;
  44.          default:
  45.       }
  46.    }
  47.  
  48.    public boolean action(Event var1, Object var2) {
  49.       ++this.shape;
  50.       if (this.shape == 7) {
  51.          this.shape = 0;
  52.       }
  53.  
  54.       ((Component)this).repaint();
  55.       return true;
  56.    }
  57. }
  58.