Salut;
Je vous remercie d'abord pour toutes vos réponses, c'est sympa de votre part d'aider un pauvre debutant comme moi;
Pour le poste de "taldius", j'avous que je n'ai pas compris grand :( sa dépasse mes competence, mais j'aimerai bien avoir plus de détails, comment devrais-je utilisé ton code? où devrais-je mettre chaque partie ?
En ce qui me concerne j'ai avancé un peu en cherchant, et j'ai fais ce qui suit:
import java.awt.*;
import java.util.Vector;
import java.awt.event.*;
import javax.swing.*;
import java.awt.geom.*;
public class RelierPoints {
public static void main(String args[]){
Fenetre principale = new Fenetre();
principale.show();
principale.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class Fenetre extends JFrame {
private Panneau p;
public Fenetre() {
setSize(600, 600);
setLocation(100, 100);
setTitle("JEU SIM");
//barre de menu:
JMenuBar barremenu = new JMenuBar();
setJMenuBar(barremenu);
JMenu joueur = new JMenu("Jeu");
JMenuItem fermer = new JMenuItem("Fermer");
barremenu.add(joueur);
joueur.add(fermer);
fermer.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
}
);
Container contenu = getContentPane();
p = new Panneau ();
contenu.add(p,"Center");
}
public void paint(){
p.dessiner(getGraphics());
}
}
class Panneau extends JPanel implements MouseListener {
Vector figures;
int courant;
int [] tab1= new int [6];
int [] tab2= new int [6];
public Panneau(){
figures = new Vector();
courant = 0;
addMouseListener(this);
tab1[0]=300; tab1[1]=400; tab1[2]=400; tab1[3]=300; tab1[4]=200; tab1[5]=200;
tab2[0]=100; tab2[1]=200; tab2[2]=300; tab2[3]=400; tab2[4]=300; tab2[5]=200;
}
public void mouseClicked(MouseEvent e){}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){
Trait t = new Trait();
t.initPoint1(e.getX(),e.getY());
figures.addElement(t);
courant=figures.size()-1;
}
public void mouseReleased(MouseEvent e){
Trait t = (Trait)figures.elementAt(courant);
t.initPoint2(e.getX(),e.getY());
dessiner(getGraphics());
}
public void dessiner(Graphics g) {
for(int i=0 ; i<figures.size(); i++){
Figure f = (Figure)figures.elementAt(i);
f.dessiner(g);
}
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 =(Graphics2D) g;
Rectangle2D rect1 =new Rectangle2D.Double(300,100,5,5);
Rectangle2D rect2 =new Rectangle2D.Double(400,200,5,5);
//Rectangle2D rect3 =new Rectangle2D.Double(400,300,5,5);
//Rectangle2D rect4 =new Rectangle2D.Double(300,400,5,5);
//Rectangle2D rect5 =new Rectangle2D.Double(200,300,5,5);
//Rectangle2D rect6 =new Rectangle2D.Double(200,200,5,5);
g2.draw(rect1);
g2.draw(rect2);
//g2.draw(rect3);
//g2.draw(rect4);
//g2.draw(rect5);
//g2.draw(rect6);
}
}
abstract class Figure{
public abstract void dessiner(Graphics g);
}
class Trait extends Figure{
public int x1,x2,y1,y2;
public void initPoint1(int x, int y){
x1 = x;
y1 = y;
}
public void initPoint2(int x, int y){
x2=x;
y2=y;
}
public void dessiner(Graphics g){
g.drawLine(x1,y1,x2,y2);
}
}
Et j'ai une question, je vais commencé d'abord par donné plus de details de ce que je veux faire:
On a deux joureurs ou deux couleur, il ya six sommets (ptits rectangle)sur la fenêtre, chaque joureur à son tour trace un trait qui reli deux sommets et ainsi de suite jusqu'à ce qu'il fasse un triangle, et le premier qui fait le plus de triangle a gagné...
Alors ma question est que comment je peux verifier si un joureur à cliqué à l'interieur d'un sommet ? il faut que je verifie les coordonnées de la sourie et je les compare avec ceux du sommet, mais je n'arrive à trouver l'endorit où je met ma procedure...
Merci inifiniment de vtre aide
[^] # Re: mount
Posté par ryadus . En réponse au message Acces disk NTFS. Évalué à 1.
mais je n'ai toujours pas accès.
[^] # Re: rapidos
Posté par ryadus . En réponse au message Logiciel libre. Évalué à 1.
quels sont les inconvenéants dans ce cas là? si le cout est bas???
Merci
# Merci
Posté par ryadus . En réponse au message Wifi avec Linux. Évalué à 1.
Merci à tous
[^] # Re: eh ?
Posté par ryadus . En réponse au message Wifi avec Linux. Évalué à 1.
et pour une faute de frappe faut pas exagérer
[^] # Re: Suggestion
Posté par ryadus . En réponse au message relier deux points. Évalué à 1.
import java.awt.*; import java.util.Vector; import java.awt.event.*; import javax.swing.*; import java.awt.geom.*; public class RelierPoints { public static void main(String args[]){ Fenetre principale = new Fenetre(); principale.show(); principale.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } class Fenetre extends JFrame { private Panneau p; public Fenetre() { setSize(600, 600); setLocation(100, 100); setTitle("JEU SIM"); //barre de menu: JMenuBar barremenu = new JMenuBar(); setJMenuBar(barremenu); JMenu joueur = new JMenu("Jeu"); JMenuItem fermer = new JMenuItem("Fermer"); barremenu.add(joueur); joueur.add(fermer); fermer.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ System.exit(0); } } ); Container contenu = getContentPane(); p = new Panneau (); contenu.add(p,"Center"); } public void paint(){ p.dessiner(getGraphics()); } } class Panneau extends JPanel implements MouseListener { Vector figures; int courant; int [] tab1= new int [6]; int [] tab2= new int [6]; public Panneau(){ figures = new Vector(); courant = 0; addMouseListener(this); tab1[0]=300; tab1[1]=400; tab1[2]=400; tab1[3]=300; tab1[4]=200; tab1[5]=200; tab2[0]=100; tab2[1]=200; tab2[2]=300; tab2[3]=400; tab2[4]=300; tab2[5]=200; } public void mouseClicked(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mousePressed(MouseEvent e){ Trait t = new Trait(); t.initPoint1(e.getX(),e.getY()); figures.addElement(t); courant=figures.size()-1; } public void mouseReleased(MouseEvent e){ Trait t = (Trait)figures.elementAt(courant); t.initPoint2(e.getX(),e.getY()); dessiner(getGraphics()); } public void dessiner(Graphics g) { for(int i=0 ; i<figures.size(); i++){ Figure f = (Figure)figures.elementAt(i); f.dessiner(g); } } public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 =(Graphics2D) g; Rectangle2D rect1 =new Rectangle2D.Double(300,100,5,5); Rectangle2D rect2 =new Rectangle2D.Double(400,200,5,5); //Rectangle2D rect3 =new Rectangle2D.Double(400,300,5,5); //Rectangle2D rect4 =new Rectangle2D.Double(300,400,5,5); //Rectangle2D rect5 =new Rectangle2D.Double(200,300,5,5); //Rectangle2D rect6 =new Rectangle2D.Double(200,200,5,5); g2.draw(rect1); g2.draw(rect2); //g2.draw(rect3); //g2.draw(rect4); //g2.draw(rect5); //g2.draw(rect6); } } abstract class Figure{ public abstract void dessiner(Graphics g); } class Trait extends Figure{ public int x1,x2,y1,y2; public void initPoint1(int x, int y){ x1 = x; y1 = y; } public void initPoint2(int x, int y){ x2=x; y2=y; } public void dessiner(Graphics g){ g.drawLine(x1,y1,x2,y2); } }