ozielm
Messages postés5Date d'inscriptionmercredi 12 février 2003StatutMembreDernière intervention 4 juin 2005
-
4 juil. 2003 à 17:13
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 2009
-
4 juil. 2003 à 17:44
Marc
Bonjour à tous,
j'essaie de faire bouger un pion manière agréable et donc avec les différentes positions occupées pas le pion depuis son point de départ jusqu'à son point d'arrivée. Le problème est que lorsque j'appelle la méthode sleep sur mon thread, la pose est faite entre chaque position mais je ne vois pas le pion bouger de place. Je ne vois le pion uniquement que lorsqu'il est arrivé à destination. Voici le bout de code qui est censé faire tout ça mais qui ne marche pas.
Quelqu'un peut-il m'aider ?
for (x=x1;x<=x2;x ++){
y=(int)Math.floor(yflt);
yflt+=pente;
try{Thread.sleep(10);}catch(InterruptedException ie){} p.setLocation(x,y);
p.setVisible(true);
}
Ici p est un JLabel affichant l'image d'un pion ...
Au fait, le problème ne viendrait-il pas du fait que l'en-tête du run de mon thread soit : public void run (MouseEvent e) { ...}
et non pas public void run (){...} ?
Ou bien à cause du fait que la méthode deplacePion qui fait bouger le pion n'est pas la méthode run (elle y fait appel)?
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 20096 4 juil. 2003 à 17:41
le fait que la méthode soit pas la même que run dérange absolument rien
par contre que la méthode run soit pas exactement pareil, pourrais être la cause. mais je peut pas vraiment te dire sasn tester
as tu regardé s'il faisait le code ??? en mode pas à pas ???
tu pourrais regarder mon projet "Jeu de shooting" qui prend le même rpinciple déplacer des jlabel dasn un thread. Par contre, moi j'utilise Runnable et non thread, masi ça reviens presqu'au même.
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 20096 4 juil. 2003 à 17:44
ah oui, un conseil, fait comme j,ai fait dasn mon projet de prendre le temps du processeur avant pour le soustraire au sleep, ça va éviter que l,annimation soit lente sur des processeur peu puissant ou si tu fasi beaucoup d'annimation en même temps
par contre, ça se pourrasi tu que ton annimation soittrop rapide ??? puisque 10 mili-seconde, c'est pas beaucoup. peut-être il le déplace, masi trop rapidement pour que tu le voies