Bom dia, sou iniciante e estou precisando de um auxilio.
Abaixo estou enviando o código que tenho hoje e que a função dele é somente desenhar um circulo na tela que se movimenta para a direita e para a esquerda.
Agora estou tentando adicionar nessa janela que é aberta um botão "Iniciar" e essa animação só iniciar no momento que o usuário clicar no respectivo botão.
Quem puder me ajudar agradeço.
 
Obrigado,
 
Carlos
 
/*Fonte */
 
import javax.swing.*;
import java.awt.*;
import java.awt.geom.*;
import java.awt.event.*;
 

public class paineldeluz extends JFrame
{
 
  public paineldeluz()
  {
   setTitle("Painel de Luzes");
  setSize(560,200);
  setVisible(true);
  addWindowListener(new WindowAdapter()
  {
    public void windowClosing(WindowEvent we) {System.exit(0);
  }
  });
  }
 

  public static void main(String[] args)
  {
    paineldeluz paineldeluz1 = new paineldeluz();
  }
 

  int[] coox=new int[6];
  public void paint(Graphics g)
  {
   Graphics2D grafico=(Graphics2D)g;
    int xc=55;
   int yc=100;
   int raio=45;
 
   for(int conta=0;conta<6;conta++)
   {
 
    coox[conta]=xc;
    xc=xc+(2*raio);
     }
 
   //int zzz=0;
  // while(zzz <=10) {
    for(int zzz=0;zzz<=10;zzz++)
    {
   for(int vai=0;vai<=5;vai++)
   {
 
        grafico.setPaint(Color.red);
        desenharcirc(grafico,coox[vai],yc,raio);
 
        int contador=0;
        boolean tempo=false;
        while(contador!=250000)
        {
            contador=contador+1;
         tempo=true;
              }
      if (tempo=true)
      {
          grafico.setPaint(getBackground());
          desenharcirc(grafico,coox[vai],yc,raio);
                 }
            } 
 
 
 
       for(int volta=4;volta>=1;volta--)
       {
 
         grafico.setPaint(Color.red);
  desenharcirc(grafico,coox[volta],yc,raio);
 
         int contadorvolta=0;
  boolean tempovolta=false;
         while(contadorvolta!=250000)
  {
           contadorvolta=contadorvolta+1;
           tempovolta=true;
            }
         if (tempovolta=true)
         {
          grafico.setPaint(getBackground());
          desenharcirc(grafico,coox[volta],yc,raio);
         }
     }
   }
 
}
 
  public void desenharcirc(Graphics g,int xc,int yc,int raio)
 {
   for(int r=0;r<=raio;r++)
   {
      for(int t=0;t<=360;t++)
      {
         int X=xc+(int)(r*Math.cos(t));
           int Y=yc+(int)(r*Math.sin(t));
           g.drawLine(X,Y,X,Y);
      }
   }
 }
}

Responder a