Salut a tous !
Je participe a un projet de jeu de plateau reprenant le principe du labyrinthe master(tm) avec entre autres, l'insertion des cases du plateau de jeu.
A la base, les cases devaient etre des JLabel, c plus simple pour gèrer les images, mais, il faut que le redimensionnement de la fenetre soit possible, alors les cases sont devenues des JPanel, dans lesquels j'ai redéfini paintComponent.
Chaque case est censée dessiner son attribut 'image', C'est une image créée avec le toolkit, puis j'appelle g.drawImage, tout ceci fonctionne à l'initialisation.
Mais, (en cliquant sur un bouton) j'insère une case ( enfin, je change les attributs de la case et de sa rangée de cases ), et toute la rangée devient grise, j'attends 4 à 5 secondes et tout se repeint.
A la deuxième insertion, ça ne se repeint pas .
J'ai vu le truc comme quoi repaint() fait son boulot 'dès que possible' dans l'API, mais j'aimerais que le repeinturage se fasse directement. (paintImmediately ne fonctionne pas non plus)
En gros, dans le listener, j'ai une boucle qui fait :
for(int i....){
case[i].refresh(); // met a jour les attributs de la case
case[i].repaint(); // repeint la case
}
Voila, merci beaucoup d'avance !
(si vous voulez les classes et les images, ça risque d'etre coton, mais bon, je peux tenter de vous les mettre aussi sur le forum).