Bonjour à tous!
J'ai un soucis que je ne parviens pas à régler dans l'un de mes projets.
Je m'explique.
Celui-ci est constitué de 2 JPanel, au sein d'un JFrame.
L'un des 2 JPanel contient deux bouton, qui me permettent d'incrémenter/décrémenter un int que j'appelerai "y".
L'autre JPanel contient une image, beaucoup plus large que la fenêtre, que je veux faire défiler. Le défilement "accélère" avec l'accroisement de "y".
La fonction qui fait la fait défiler, est dans ce JPanel, la voici :
RQE : la coordonne x, est l'implantation en absice de mon image à faire défiler.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 public void defilement(int i){ if(this.y!=0){ this.x=0; while(true){ //Sert a remettre le "paysage" au début avant la fin du défilement de celui-ci pour ne pas //voir que le fond... if(x==-4630){ x=0; } x--; this.repaint(); try { Thread.sleep(this.y); // plus "y" croit, plus on raffraichit vite l'image } catch (InterruptedException e) { e.printStackTrace(); } if(y==0){ break; } } } }
Mon problème :
Lorsque je lance mon programme, celui semble "bloqué"...
Je pense que c'est à case des "sleep" qui le mettent tout entier en sommeil, et que donc il "n'écoute" plus mes boutons... Mais je vous avoue que là ça dépasse mon niveau dans l'immédiat.
J'espère que vous trouverez le moyen de m'expliquer ce qui merdouille et comment corriger.
Merci en tout cas!
Partager