home *** CD-ROM | disk | FTP | other *** search
/ Java by Example / jbecd.bin / JBE-CD / NTUsers / JBECODE.ZIP / JavaByExample / chap27 / ImageApplet3.java < prev    next >
Text File  |  1996-03-14  |  2KB  |  75 lines

  1. import java.applet.*;
  2. import java.awt.*;
  3. import java.net.*;
  4.  
  5. public class ImageApplet3 extends Applet
  6. {
  7.     final int HALFSIZE = 0;
  8.     final int FULLSIZE = 1;
  9.     final int DOUBLESIZE = 2;
  10.  
  11.     Image snake;
  12.     int size;
  13.  
  14.     public void init()
  15.     {
  16.         Button button = new Button("50%");
  17.         add(button);
  18.         button = new Button("100%");
  19.         add(button);
  20.         button = new Button("200%");
  21.         add(button);
  22.  
  23.         URL codeBase = getCodeBase();
  24.         snake = getImage(codeBase, "snake.gif");
  25.  
  26.         size = FULLSIZE;
  27.     }
  28.     
  29.     public void paint(Graphics g)
  30.     {
  31.         int width = snake.getWidth(this);
  32.         int height = snake.getHeight(this);
  33.  
  34.         if (size == HALFSIZE)
  35.         {
  36.             int x = 75 - width / 4;
  37.             g.drawImage(snake, x, 50, width/2, height/2, this);
  38.             resize(150, height/2+50);
  39.         }
  40.         else if (size == FULLSIZE)
  41.         {
  42.             int x = 75 - width / 2;
  43.             g.drawImage(snake, x, 50, this);
  44.             resize(150, height+50);
  45.         }
  46.         else if (size == DOUBLESIZE)
  47.         {
  48.             int x = ((width*2+50)/2)-width;
  49.             g.drawImage (snake, x, 50, width*2, height*2, this);
  50.             resize(width*2+50, height*2+50);
  51.         }
  52.     }
  53.  
  54.     public boolean action(Event evt, Object arg)
  55.     {
  56.         if (arg == "50%")
  57.             size = HALFSIZE;
  58.         else if (arg == "100%")
  59.             size = FULLSIZE;
  60.         else if (arg == "200%")
  61.             size = DOUBLESIZE;
  62.  
  63.         repaint();
  64.  
  65.         return true;
  66.     }
  67.  
  68. }
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.