Tempo de troca de imagem

0 respostas
java
Pantrol

Galera queria que quando apertasse no botão depois de um certo tempo minha imagem mudasse, tentei usar threads mas meio ruimzinho nisso alguém me lembra como faço?
----Classe principal____

package threads;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Threads extends JFrame implements ActionListener{

    JButton botao = new JButton("MUDAR");
    ImageIcon imagem1 =  new ImageIcon(getClass().getResource("imagem1.gif"));
     ImageIcon imagem2 =  new ImageIcon(getClass().getResource("imagem2.gif"));
    JLabel l = new JLabel(imagem1);

    public JLabel getL() {
        return l;
    }

    public ImageIcon getImagem1() {
        return imagem1;
    }

    public ImageIcon getImagem2() {
        return imagem2;
    }

   public Threads(){
     editar_Janela();   
    }
    
    public void editar_Janela(){
        setLayout(null);
        
        l.setBounds(10, 10, 200, 200);
        getContentPane().add(l);
        
        botao.setBounds(280, 20, 70, 220);
        botao.addActionListener(this);
        getContentPane().add(botao);
        
        
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(400,300);
        setLocationRelativeTo(null);
        setVisible(true);
        
    }
    public static void main(String[] args) {
        new Threads();
    }

    @Override
    public void actionPerformed(ActionEvent e) {
      MinhaThread t = new MinhaThread();
      t.start();
         new Thread();
          
    }

--------------- classe thread-------------
package threads;

public class MinhaThread extends Thread  {

Threads label_imagem = new Threads();


    public void Thread(){
      this.start();
    }
   
    public void run(){
        
        try {
            Thread.sleep(2000);
         for(int i =1; i<10;i++){
             if(i==10){
                 // erro grotesco aqui!!! to me embananando com get e set!!!
             label_imagem.getL(label_imagem.getImagem2());
             System.out.println("Confirmar tempo");
             }
             }
        } 
        catch (InterruptedException ex) {
            
        }
        
    }
Criado 15 de junho de 2020
Respostas 0
Participantes 1