cs_nili
Messages postés2Date d'inscriptionsamedi 24 avril 2004StatutMembreDernière intervention 5 mai 2004
-
5 mai 2004 à 18:13
cs_tds
Messages postés351Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 9 décembre 2004
-
6 mai 2004 à 07:29
1)je vous envoie le code source,lorsque j enleve la methode paint les boutons saffichent correctement.Sinon il faut appuyer a l endroit k il vont s afficher,et puis ils s affichent.comment resoudre ce pb?
2)pour les deplacement des pion j ai touve un algo pr afficher le pion deplace mais:
1)comme je fais un repaint dans mouseclicked,je redessine tout donc ts les pions initiales vont se reafficher.
2)de tout facon le pion depalce ne s affiche pas.
for(int i=0;i<nb;i++)
{
g.setColor(b);
g.fillOval(ox-r,oy-r+y,2*r,2*r);
if (oy==75)
{y=y+2*r;}//pr les pions ki suit ds un meme triangle
else {y=y-2*r;}
}
}
public static void init(Graphics g,int nb,Color b,Pion P[],int r,int x,int y)
//methode permettant de dessiner des pions autant qu on veut et de couleur qu on veut
public class Tavla extends JApplet implements ActionListener,MouseListener
{
Button b1,b2;
//les couleurs qu on va utiliser
Color vert=Color.green;
Color gris=Color.lightGray;
Color rouge=Color.red;
Color noir=Color.black;
int i=0;
int nd=0;
Pion P[]=new Pion[15];
Pion P1[]=new Pion[15];
int r=15; //pr le rayon
int x; //pr les pions
int y;
int j=0; //la variable pour designer une triangle de t2
int n=10;
Pion P_deplace;
Pion P9[]=new Pion[n];
b1=new Button("lancer un nouveau jeu");
panel.add(b1);
b1.setBackground(new Color(192,137,11));
b1.setForeground(Color.black);
addMouseListener(this);
setBackground(gris);
/*//les boutons
Container cp=getContentPane();
cp.setLayout(new FlowLayout(FlowLayout.CENTER));
JButton b1=new JButton("lancer un nouveau jeu");
JButton b2=new JButton("quitter");
cp.add(b1);
cp.add(b2);
b1.addActionListener(this);
b1.setActionCommand("lancer un nouvel jeu");
b2.addActionListener(this);
b2.setActionCommand("quitter");*/
}
public void actionPerformed(ActionEvent evt)
{}/*
if (evt.getActionCommand().equals("lancer un nouvel jeu"))
{/*lancement des des}
else
{g.drawstring("au revoir",200,300);
System.exit;}
}*/
public void mousePressed(MouseEvent evt) { }
public void mouseReleased(MouseEvent evt) {}
public void mouseEntered(MouseEvent evt) { }
public void mouseDragged(MouseEvent evt) {}
public void mouseMoved(MouseEvent evt) {}
public void mouseExited(MouseEvent evt) {}
if(P[i].c==rouge)
{
//if(e.getY()60) //si le pion se trouve a t1
{i=i-nd;
if (i>0)
{ x=t1[i].x1;
y=t1[i].y2;}
else //passage a t2 de cette facon la securite du sens est deja inclus
{
j=-i;
x=t2[j-1].x1;
y=t2[j-1].y2;
}
}
if (e.getY()>270 && e.getY()<490) // si le pion se trouve a t2
{
j=j-nd;
x=t2[j].x1;
y=t2[j].y2;
}
Pion P_deplace=new Pion(15,x,y,vert);
//}
}
//pour les VERTS
if(P[i].c==vert)
{ if(e.getY()270 && e.getY()<490) //pr les pions se trouvant a t2
{ i=i-nd;
if (i>0)
{x=t2[j].x1;
y=t2[j].y2;}
else //passage a t2 de cette facon la securite du sens est deja inclus
{
j=-i;
x=t1[j-1].x1;
y=t1[j-1].y2;
}
}
if (e.getY()<250 && e.getY()>=60) // pr les pions se trouvant a t2
{
j=j-nd;
x=t2[j].x1;
y=t2[j].y2;
}
}
}
repaint();
}
public void paint(Graphics g)
{
boolean presse = false;
//creation de 4 tirangle pour la base de Tavla
Rectangle1 R=new Rectangle1(450,607,100,50,vert,presse);//la plus grde base
Rectangle1 R1=new Rectangle1(430,30,110,60,gris,presse);
Rectangle1 R2=new Rectangle1(430,234,150,60,gris,presse);
Rectangle1 R3=new Rectangle1(430,234,423,60,gris,presse);
Rectangle1 R4=new Rectangle1(430,30,667,60,gris,presse);
//on va dessiner la base de Tavla
R.dessiner(g);
R1.dessiner(g);
R2.dessiner(g);
R3.dessiner(g);
R4.dessiner(g);
//on va dessiner 24 triangles
Triangle1.init(170,200,150,60,189,60,39,0,6,t1,g);
Triangle1.init(443,200,423,60,461,60,39,6,12,t1,g);
Triangle1.init(170,350,150,490,189,490,39,0,6,t2,g);
Triangle1.init(443,350,423,490,461,490,39,6,12,t2,g);
//on va dessiner les pionts places initialement sur t1
Pion.init(g,5,vert,P1,15,t1[6].x1,(t1[6].y2)+15); //+15 pr le rayon,pour arriver au centre du cercle
Pion.init(g,5,rouge,P,15,t1[0].x1,(t1[0].y2)+15);
Pion.init(g,3,vert,P1,15,t1[4].x1,(t1[4].y2)+15);
Pion.init(g,2,rouge,P,15,t1[11].x1,(t1[11].y2)+15);
//on va dessiner les pionts places initialement sur t1
Pion.init(g,5,vert,P1,15,t2[0].x1,(t2[0].y2-15));
Pion.init(g,5,rouge,P,15,t1[6].x1,(t2[6].y2-15));
Pion.init(g,3,rouge,P,15,t1[4].x1,(t2[4].y2-15));
Pion.init(g,2,vert,P1,15,t1[11].x1,(t2[11].y2-15));//-15 pr le rayon
//les insrtuctions pour les joueurs
g.setColor(Color.blue);
g.drawString("Pour bouger un pion:",100,600);
g.drawString("Appuyer sur un des et puis sur un pion:",100,620);
//pour stocker les nouveaux pions rouges k on a crees