simo_azzaoui
Messages postés11Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention21 septembre 2006
-
20 sept. 2006 à 23:11
simo_azzaoui
Messages postés11Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention21 septembre 2006
-
21 sept. 2006 à 20:35
bonjour , g besoin d'aide sur une affaire de thread , voilà , g une classe qui herite de la classe thread , ma classe et une classe ki dessine des ballons , je voudrais les faire deplacer automatiquement ds la fenetre ,
alors g redefinit la methode run , le probleme ki se pose , c ke mes ballons font tous la mem chose , la mem sequence de mouvement , pouvez vous me conseiller ? merci
simo_azzaoui
Messages postés11Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention21 septembre 2006 21 sept. 2006 à 20:35
alors voilà , j'ai resolu le probleme com suit :
au lieu que ma classe balle herite de la classe thread , g crée une autre classe qui va gérer le mouvement des balle et c'est elle qui herite de la classe thread . je lui passe ds son constructeur un ArrayList des balles que g crée ds le Main et voici le code de la méthode run .
public void run()
{ int i,j;
Balle r;
while(true)
{i=Rand_i.nextInt(list.size());
j=Rand_j.nextInt(3);
r=(Balle)list.get(i);
switch(j)
{
case 0: {r.avancer(10);break;}
case 1: {r.droite(45);break;}
case 2: {r.gauche(45);break;}
simo_azzaoui
Messages postés11Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention21 septembre 2006 21 sept. 2006 à 08:35
en effet , j'ai utilisé la classe Random au sein de ma méthode run comme suit :
mais comme je l'ai précedemment dis , ttes mes instances font la meme chose , que me conseillez vous ?
public void run()
{ int i;
try {
while(true) {
switch(i=Rand.nextInt(3))
{
case 0: {this.avancer(10);break;}
case 1: {this.droite(45);break;}
case 2: {this.gauche(45);break;}
simo_azzaoui
Messages postés11Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention21 septembre 2006 21 sept. 2006 à 12:17
voila , lorque je click sur le bouton , voici le code qui s'execute :
void proc_click()
{
ball1 = new Balle(feuille,"balle1",200,400,"Thread_balle1");//constructeur où on passe une feuille de dessin , c une de mes
//classes , puis le nom de l'objet , 2 int pour les coordonnées , et le
//nom du thread .
ball2 = new Balle(feuille,"balle2",150,400,"Thread_balle2");
ball3 = new Balle(feuille,"balle3",100,400,"Thread_balle3");
feuille.drawIt();
while (true)
{ball1.start();
ball2.start();
ball3.start();
}