Demande d'explication sur un MouseListener
Bonjour à tous,
Ci-dessous ce trouve un petit code qui affiche un JFrame qui contient un JPanel de couleur rouge. Lorsque nous cliquons dessus, l'arrière-plan devait passer du bleu, au jaune après une légère temporisation. Mais en fait, pas du tout...
Es ce que vous pouvez m'expliquer pourquoi la commande "pan.setBackground(Color.BLUE);" est complètement ignoré ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| package test;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Fenetre extends JFrame{
public Fenetre() {
this.setSize( 200 , 200 );
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pan = new JPanel();
pan.setBackground(Color.RED);
pan.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent me) {
pan.setBackground(Color.BLUE);
tempo(5);
pan.setBackground(Color.YELLOW);
}});
this.setContentPane(pan);
this.setVisible(true);
}
private void tempo(int t) {
for(int i = 1; i <= t; i++)
{ try{ Thread.sleep(t*100); }
catch (InterruptedException e){e.printStackTrace(); } }
}
} |