vitorismar
(usa Ubuntu)
Enviado em 08/10/2012 - 13:40h
Olá a todos, sou iniciante em Java, estou fazendo um trabalho pra Faculdade em que eu gostaria que um botão (swing), ao ser clicado, saisse da cor default e mudasse para uma cor qualquer depois de 2 segundos, porém, quando eu clico no botão, primeiro ele espera os 2 segundos e depois ele muda a cor do botão...
Ficaria grato se alguém pudesse me ajudar...
Segue abaixo uma versão reduzida do meu fonte...
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Teste extends JFrame implements ActionListener{
private JPanel pnlBotao, pnlContainer;
private JButton btnInicio;
Teste(){
pnlBotao = new JPanel(new GridLayout(1,1,5,5));
pnlBotao.setSize(140,140);
btnInicio = new JButton( "Começar" );
btnInicio.addActionListener( this);
pnlBotao.add(btnInicio);
pnlContainer = new JPanel(new BorderLayout());
pnlContainer.add("Center", pnlBotao);
getContentPane().add(pnlContainer);
setSize(140,140);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
try{
if (e.getSource()==btnInicio){
btnInicio.setBackground(new java.awt.Color(102,153,255));
// minha dúvida é neste trecho, primeiro ele "pausa" para depois mudar a cor do botão
// eu queria que fosse alterada antes da pausa...
Thread.sleep(2000);
btnInicio.setText("OK");
}
}
catch (Exception erro) {
JOptionPane.showMessageDialog(null, "Erro! " + erro);
}
}
public static void main(String[] args){
Teste t= new Teste();
}
}