Bonjour,
Je n'arrive pas à trouver la racine du problème.
J'ai une classe "MonFilm" qui instancie 2 ArrayList :
instanciée comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public MonFilm(){ this.figures = new ArrayList <Figure>(); this.couleursFond = new ArrayList <CouleurFond> (); String FondEcran; } private ArrayList <CouleurFond> couleursFond; private String FondEcran; private ArrayList <Figure> figures;
Les deux méthodes en question sont :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 MonFilm monFilm = new MonFilm(); monFilm.AjouteCouleurFond(new CouleurFond(Color.white, 0));
La classe CouleurFond est toute bête, une Color Couleur et un int Index, avec set et get.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public void AjouteCouleurFond(CouleurFond CF){ couleursFond.add(CF); } public ArrayList <CouleurFond> getTableauCouleurs (){ return couleursFond; }
Lorsque dans paintComponent du JPanel, j'appelle :
la méthode est appelée en boucle. Sur la console, je lis :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 setBackground(monFilm.getTableauCouleurs().get(0).getCouleur());
tant que je n'interrompt pas le programme. (j'ai mis unAppel paintComponent
Appel paintComponent
Appel paintComponent
Appel paintComponent
Appel paintComponent
Appel paintComponent
Appel paintComponent
Appel paintComponent
en début de méthode pour contrôle.)
Code : Sélectionner tout - Visualiser dans une fenêtre à part System.out.println("Appel paintComponent");
Je ne comprends pas ce qui se passe. Quelqu'un ayant eu cette expérience pourrait-il me guider? Merci.
Partager