Pb de rafraichissement d'ecran en Java

Bernard -  
le_dahu Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   -
Salut a tous !

J'ai un petit probleme depuis quelques temps que je n'arrive pas a resoudre...
En gros, j'essaye de programmer un Puissance 4 en Java... Pour l'instant, j'utilise l'algo du MiniMax pour faire jouer l'ordinateur... Cet algo prend pas mal de temps pour s'executer pour une profondeur d'execution assez elevee...
Bref, pour faire patienter l'utilisateur, j'ai pense a inclure dans mon IHM une barre de progression qui arrive a 100% quand l'algo se termine... Et c'est la que les ennuis commencent... Il se trouve, en fait, que pendant toute la duree d'execution de mon algo, l'IHM ne veut pas se rafraichir... Du coup, ma barre passe de 0% a 100% directement a la fin de l'algo... C'est pas top !

Si quelqu'un a une idee de la provenance de ce grand mechant bug, je suis toute ouie... Peut-etre que mon algo est si gourmnd en ressources qu'il ne laisse pas le temps a l'IHM pour faire ce qu'elle a a faire...

Merci d'avance,
Bernard
A voir également:

2 réponses

totodude
 
Salut Bernard,

j'ai moi meme réalisé un jeu de tir en java.
ma barre de progression indiquant le temps de jeu se remplissait dans un timer, et ce meme timer incluait le repaint() de l'IHM qui permettait le rafaichissement.

je n'ai plus accès à mon prog (pb d'ordi), donc je ne peux t'envoyer de code. est ce que tu dis bien a ta barre de se remplir petit à petit ?

meme si l'algo prend bcp de memoire, ca devrait quand meme se remplir, meme de facon saccadé.

bon courage
tom
0
le_dahu Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   51
 
Sinon, tu as aussi la méthode paintImmediately qui permet de forcer le rafraichissement d'un composant immédiatement... Le pb avec la méthode repaint, c'est que le rafraichissement ne se fait que lorsque cela est possible (si ton prog à le temps de le faire)...

A+


Si à gauche j'ai l'amont, c'est bon...
Si à gauche j'ai l'aval, j'suis bancal...
0