bonsoir a tous voila j'ai une ptite kestion : je suppose qu'il est possible dans un meme prog (mais dans des classes differentes) d'utiliser deux fois paintComponent(Graphics g) mais ca marche pas chez moi !!!
voila mon code ::::::
class 1
--------
public class Test extends JFrame
{
JPanel pane = new JPanel ();
public Morpion()
{
setTitle(">>> Morpion v2.0 <<<");
setSize(250,300);
Terrain pl_jeu = new Terrain();
getContentPane().add(pl_jeu);
setVisible(true);
}
public static void main (String[] arguments)
{
new Test();
}
}
class 2
---------
public class Terrain extends JPanel implements MouseListener
{
public boolean[] test = new boolean[8];
public int i = 0;
// croix
ImageIcon imIc = new ImageIcon("croix.gif");
Image croix = imIc.getImage();
// rond
ImageIcon imIc2 = new ImageIcon("rond.gif");
Image rond = imIc2.getImage();
public int x , y;
JButton j1;
JButton j2;
public Terrain()
{
addMouseListener(this);
j1 = new JButton("joueur1");
j2 = new JButton("joueur2");
j1.setBackground(Color.white);
j2.setBackground(Color.white);
add(j1);
add(j2);
j1.setEnabled(true);
j2.setEnabled(false);
repaint();
}
public void paintComponent (Graphics g)
{
int i;
super.paintComponent(g);
// 1 ere colonne
g.drawRect(50,100,40,40);
g.drawRect(50,152,40,40);
g.drawRect(50,204,40,40);
// 2 eme colonne
g.drawRect(102,100,40,40);
g.drawRect(102,152,40,40);
g.drawRect(102,204,40,40);
// 3 eme colonne
g.drawRect(154,100,40,40);
g.drawRect(154,152,40,40);
g.drawRect(154,204,40,40);
for(i=0;i<13;i++)
{
g.drawLine(90+i,100,90+i,244);
g.drawLine(142+i,100,142+i,244);
g.drawLine(50,140+i,194,140+i);
g.drawLine(50,191+i,194,191+i);
}
}
public void mouseEntered(MouseEvent evt) { }
public void mouseExited(MouseEvent evt) { }
public void mousePressed(MouseEvent evt) { }
public void mouseReleased(MouseEvent evt){ }
public void mouseClicked(MouseEvent evt)
{
Object source = evt.getSource();
x = evt.getX();
y = evt.getY();
// on definit les contours des cases
// case 1
test[0] = (x>=50) & (x<=90) & (y>=100) & (y<=140);
if(test[0] == true )
new Rond( x, y);
}
}
class3
--------
public class Rond
{
// rond
ImageIcon imIc2 = new ImageIcon("rond.gif");
Image rond = imIc2.getImage();
public Rond(int x, int y)
{
}
public void paintComponent(Graphics g1,int x, int y)
{
super.paintComponent(g1);
g1.drawImage(rond,x,y,40,40,null);
}
}
Donc je resume : lorsqu'on clike sur une case alors le prog doit aller dans la class Rond et dessiner l'image rond.gif dans la case correspondante.
mais j'ai une erreur de ce type :
cannot resolve symbol methode paintComponent(java.awt.graphics)
je c pas tro koi faire alors si vous pouviez m'aidez !!!
thx all
NiKo [==;;;;;;;;;;;>