Java morpion

kikoulolmen Messages postés 2 Date d'inscription dimanche 24 mai 2009 Statut Membre Dernière intervention 14 juillet 2009 - 4 juil. 2009 à 21:21
kikoulolmen Messages postés 2 Date d'inscription dimanche 24 mai 2009 Statut Membre Dernière intervention 14 juillet 2009 - 6 juil. 2009 à 15:38
Bonjour je suis etudiant (au gymnase)et je doit dans le cadre de mes etudes effectuer un petit programme en java et j'aurais besoin d'aide pour pouvoir creer celui ci. Comment mettre un dessin (ici croix et ronds du morpion)
 voici ce que j ai deja fait si ca peut vous aider a me repondre

import java.util.*;
import java.awt.*;


import javax.swing.*;


import java.awt.event.*;


public class plateaumorpion extends JFrame implements MouseListener   {


 // La variable depart sera vraie des le clic dans la fenetre
 
 public boolean niv = false;
 public boolean niv() {
  return niv;}
 public boolean Choix = false;
 public boolean Choix() {
  return Choix;}
 public boolean depart = false;
 public boolean depart() {
  return depart;}
 
 
 
 
 
 // Necessaire car mouseEvent est une interface
 public void mousePressed(MouseEvent e) {
  if (!depart){depart = true ;
  System.out.println("Depart"); } // POur voir dans la console. A enlever...
  else if(!Choix) {Choix = true ;
        System.out.println("Choix2");}
  else if (!niv)niv = true ;
        System.out.println("niveau");
       
  
 }


 // Necessaire car mouseEvent est une interface, mais non utilisees ici:
     public void mouseReleased(MouseEvent e) {}
     public void mouseEntered(MouseEvent e) {}
     public void mouseExited(MouseEvent e) {}
     public void mouseClicked(MouseEvent e) {}
    
    private int max =3;
     
   
   
   
    public void demarer (String DemaragePartie){
    JFrame fenetre1 = new JFrame();
    Container contenu1 = fenetre1.getContentPane();
    JButton [] bouton1 = new JButton [1];
   
    fenetre1.setSize(200, 150);
    fenetre1.setTitle(DemaragePartie);
    fenetre1.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);// destruction de la fenetre


   
    for (int compt = 0; compt <1 ; compt++){
     bouton1 [compt] = new JButton("nouvelle partie") ;
     contenu1.add(bouton1[compt]);
     bouton1[compt].addMouseListener(this);
    }
    fenetre1.setVisible(true);
    }
 
   
     
   
  public void choixDifficulte(String Choix){
    JFrame fenetre2 = new JFrame();
    Container contenu2 = fenetre2.getContentPane();
    JButton[] bouton2 = new JButton [2];
    
    fenetre2.setSize(200, 150);
       fenetre2.setTitle(Choix);
    fenetre2.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);// destruction de la fenetre
 
  
    for (int compt2 = 0; compt2 < 1; compt2++){
    


     bouton2[compt2]= new JButton("Choix de la difficulte");
     contenu2.add(bouton2[compt2]);
     bouton2[compt2].addMouseListener(this);
    }
  fenetre2.setVisible(true);
  }
   
   
   public void nivDifficulte(String niveau) {
   JFrame fenetre3 = new JFrame();
   Container contenu3 = fenetre3.getContentPane();
   JButton []bouton4 = new JButton [1];
   JButton []bouton4b = new JButton [1];
   fenetre3.setSize(250,200);
   fenetre3.setTitle(niveau);
   fenetre3.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
  
   contenu3.setLayout(new GridLayout(2,1));
  
   for (int compt4 = 0; compt4 < 1; compt4++){
    bouton4[compt4]= new JButton ("facile");  
    contenu3.add(bouton4[compt4]);
          bouton4[compt4].addMouseListener(this);}
         for (int compt5 = 0; compt5 < 1; compt5++){
       bouton4b[compt5]= new JButton("difficile");
    contenu3.add(bouton4b[compt5]);
    bouton4b[compt5].addMouseListener(this);}
     fenetre3.setVisible(true);
   }
   
   
   
   
   
   
    public void dispay (String PanneauDeJeu ){


     JFrame fenetre4 = new JFrame();//le plateau de jeu
     Container contenu4 = fenetre4.getContentPane();// ce qui y sera contenu
     JButton bouton4 [][] = new JButton [max][max];//boutons 3*3


     fenetre4.setSize(700,700);// taille de la fenetre
     fenetre4.setTitle(PanneauDeJeu);// titre de la fenetre
     fenetre4.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);// destruction de la fenetre


     contenu4.setLayout(new GridLayout(3,//lignes
     3,//colonnes
     0,//intervalle entre les lignes
     0// intervalles entre les colonnes


     ));


     for (int x = 0; x<max;x++){
     for(int y = 0; y< max; y++){


     bouton4[x][y]= new JButton ();




     contenu4.add(bouton4 [x][y]);
     }
     }
     fenetre4.setVisible(true);
    }


public void MouseClicked(MouseEvent ev){
 int x = ev.getX();
 System.out.println("vous avez cliquer sur le bouton" +x+1);
}


 


 


/**
 * @param args
 */
   
public static void main(String[] args) {


 // P. Breguet: creer le plateau de jeu et commencer le jeu:
  plateaumorpion plateau = new plateaumorpion();
  plateau.demarer (" Fenetre de Demarage");
 // Attendre le clic sur la fenetre de depart
  while (!plateau.depart()){};
  plateau.choixDifficulte("Choix de la difficulte");
  // Attendre le clic sur la fenetre de choix
  while(!plateau.Choix() ) {};
  plateau.nivDifficulte("niveau de difficulte");
  while(!plateau.niv()){};
  plateau.dispay("Plateau de jeu");
 
  }
}


 


 


 


 




 

2 réponses

Kotomine Messages postés 112 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 5 novembre 2009
6 juil. 2009 à 11:20
Tu peux mettre une image dans un JButton avec la fonction setIcon( )

Combiné avec ImageIcon:

myButton.setIcon(new  ImageIcon( this.getClass().getResource("croix.jpg")).getImage() );

Il te faudra une image croix.jpg dans le même dossier que ta classe qui va utiliser cela.

;I'm just keeping the hopeless cross to increase the meaninglessness
0
kikoulolmen Messages postés 2 Date d'inscription dimanche 24 mai 2009 Statut Membre Dernière intervention 14 juillet 2009
6 juil. 2009 à 15:38
merci beucoup et comme tu a l'aire tres fort je me permet de te demander  si tu n'aurai pas un bon algorithme pas trop compliquer car celui du min max est vraiment hard pour un debutant comme moi.merci d'avance et desoler d'abuser de ta gentillesse. =)
0
Rejoignez-nous