nao uso muito applets mas pelo pouco q sei existe um metodo....
 
    public void paint() {
   
    }
 
nao sei se vc entendeu...mas espero ter ajudado...
 

----- Original Message -----
Sent: Wednesday, August 23, 2000 6:01 PM
Subject: Animação - Só funciona uma vez

Executo este Applet e ele executa o While do método Exibe uma unica vez, eu queria que ele executasse mais vezes.
 

import java.awt.*;
import java.applet.*;
 
public class Teste extends Applet
{   Label lblA = new Label("Animacao:");
    Choice cboA = new Choice();
 
    Font f1 = new Font("Courier",Font.PLAIN,12);
 
    public void init()
    {   setLayout(null);
        lblA.setFont(f1);
        add( lblA );
 
        cboA.setFont(f1);
        cboA.addItem("Homem-aranha");
        cboA.addItem("Coelho");
        add( cboA );
        cboA.requestFocus();
 
        lblA.reshape(1,0,70,20);
        cboA.reshape(71,0,110,20);
    }
 
    public boolean action(Event evt,Object arg)
    {   if (evt.target instanceof Choice)
        {  String d = cboA.getSelectedItem();
          
           if (d.equals("Homem-aranha"))  Exibe("a1",2);
           if (d.equals("Coelho"))        Exibe("f1",8);
           return true;
        }
        return false;
    }
 
    public void Exibe(String a, int b)
    {   String arq1[] = {"aranha1.bmp", "aranha2.bmp"};
        String arq2[] = {"coelho1.bmp", "coelho2.bmp", "coelho3.bmp",
                         "coelho4.bmp", "coelho5.bmp", "coelho6.bmp",
                         "coelho7.bmp", "coelho8.bmp",};
 
        Image img1;
        Graphics g = getGraphics();
   
        int ct = 0;
        int i = 0;
        int bc = 0;
 
        while (ct < (b * 3))
        { if (a.equals("a1"))
          {  img1 = getImage(getCodeBase(),arq1[bc]);
             g.drawImage(img1,1,30,this);
             ct=ct + 1;
          }
 
          if (a.equals("f1"))
          {  img1 = getImage(getCodeBase(),arq2[bc]);
             g.drawImage(img1,1,30,this);
             ct=ct + 1;
          }
 
          bc = bc + 1;
          if (bc > b) bc=1;
         
          try
          {  Thread.sleep(500);
          }
          catch (InterruptedException e)
          {
          }
         
        }
    }
               
 
}

Responder a