IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Dessiner une interface MastermInd


Sujet :

AWT/Swing Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    231
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 231
    Par défaut Dessiner une interface MastermInd
    Bonjour,

    dans le cadre d 'un exercice, je dois dessiner une interface graphique.
    Le problème est que j arrive à afficher mes zone Layout avec le BorderLayout

    J'arrive donc à avoir 5 zones (OUest, est, nord, sud, centre). J'arrive à créer bouton dans ma fenêtre

    Outre ces essais là, j'arrie à créer un ovale dans ma fenêtre de jeu.

    Cependant, je n'arrives pas à créer les deux en même temps. j'ai l'impression que l'un ecrése l'autre. C'est embetant.

    L'objectif étant de créer un cercle au centre de la fenêtre de jeu. Et de créer un tableau dans la zone rouge de la capture d'écran.
    J'ai beau chercher , je ne trouves pas.

    Pourriez vous me conseiller sur la conception graphique.
    Je vous poste une image de ce que j'arrives à avoir.

    http://bcoudou.free.fr/ebay/Capture.png

    Je vous montre mon code , je vous mets le code en rouge là où je travailles sur le graphique


    D'avance je vous remercie pour votre aide
    Programme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // j importe les biblio
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
     
     
    public class Programme {
    	public static void main (String [] args){
    		//on cree la fenetre principale qui heberge le jeu		
    		FenetrePrincipale fen = new FenetrePrincipale();
    	}
     
    }
    Partie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    //sert à la lecture au clavier
    import java.util.Scanner;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
     
    //classe qui va créer la combinaison et les réponses. Elle hérite de la classe Partie
    public class Partie extends Jeu{
    	// on crée une combinaison à n cellules selon ce qu on a déclaré dans le constructeur
    	protected int [] combinaison; 
    	//on crée une variable qui va acceuillir la réponse
    	protected int [] reponse;
    	//je copies mes tableaux pour pouvoir travailler dessus.
    	protected int [] copieCombinaison; 
    	protected int [] copieReponse;    
    	//on définit les constructeurs par défaut
    	public Partie(int a ,int b, int c){ 
    		// on appele le constructeur de la classe mère		
    		super(a,b,c); 
    		setPartie();
    	}
    	//on déclare la méthode qui va définir la combinaison
    	public void setPartie(){
    		//j initialise mes copies de tableaux
    		copieCombinaison = new int[nbPions];
    		copieReponse = new int[nbPions];
    		//on définit une combinaison à x pions
    		combinaison = new int[nbPions];
     
    		//ANCIEN PROGRAMME		
    		//on introduit
    		//System.out.println("Joueur 1, vous allez définir votre combinaison:");
     
    		// on affiche une msgbox qui previent
    		JOptionPane.showMessageDialog(null,"Joueur 1, vous allez définir votre combinaison:");
    		// on définit des variables
    		String tmptxt;
    		int tmp;
    		// on donnes des valeurs à la combinaisons, il faut passer sur chaque positions du tab
    		for (int i=0; i<nbPions; i++){
     
    			//ANCIEN PROGRAMME
    			/*//ceci sert pour la lecture au clavier.
    			Scanner clavier = new Scanner (System.in);
    			System.out.print("Choisissez un chiffre entre 1 et "+nbCouleurs+"? ");
    			int tmp = clavier.nextInt();*/
     
    			//on demande la saisie du chiffre
    			tmptxt=JOptionPane.showInputDialog(null, "Choisissez un chiffre entre 1 et "+nbCouleurs+"? ");
    			// on transforme en int
    			tmp=Integer.parseInt(tmptxt);
    			// on teste si c'est > 0 ou < aux nombres de couleurs
    			while(tmp > nbCouleurs || tmp < 0) {
     
    				//ANCIEN PROGRAMME 
    				//System.out.print("ATTENTION!!!Choisissez un chiffre entre 1 et "+nbCouleurs+"? ");
    				//tmp = clavier.nextInt();
     
    				// on affiche une msgbox qui previent de l erreur
    				tmptxt=JOptionPane.showInputDialog(null, "ATTENTION!!! 	Choisissez un chiffre entre 1 et "+nbCouleurs+"? ");
     
    			}
    			//si on sort de la boucle alors c'est bon
    				combinaison[i]=tmp;
     
    		}
     
    	}
    	//une méthode pour retourner la combinaison. On affiche chaque él du tableau
    	public void getCombinaison(){
    		System.out.print("la combinaison est: ");
    		for (int i=0;i<nbPions;i++){
    			System.out.print(combinaison[i]+" ");
    		}
    		System.out.println("");
    	}
    	//on surcharge toString
    	public String toString(){ return "la combinaison a "+nbPions+" pions";}
     
    	//on définit le nombre de pions bien placés
    	public int bienPlaces(){
    		//je définis une variable qui va définir le nombre de pions bien placés
    		int bp=0;
    		//on compare chaque el de la reponse aux el de la combi, et qu elle sont bien placé
    		for (int i=0;i<nbPions;i++){
    			if (reponse[i]==combinaison[i]){
    				bp++;
    				// on le met = 0 afin de na pas le compter dans la methode malPlace
    				copieReponse[i]=copieCombinaison[i]=0;
    			}
    		}
    		return bp;
    	}
    	//on définit le nombre de pions mal placés
    	public  int malPlaces(){
    		//je définis une variable qui va définir le nombre de pions mal placés
    		int mp=0;
    		//on compare chaque el à tous les él afin de voir si il se trouve dans la combi, et dans une autre boucle on fait el par el de la combi
    		for (int j=0;j<nbPions;j++){
    			for (int i=0;i<nbPions;i++){
    				if (copieReponse[j]==copieCombinaison[i] && (copieReponse[j] != 0 || copieCombinaison[i] != 0)){
    					///j incremente
    					mp++;
    					// je met les valeurs = 0
    					copieReponse[j]=copieCombinaison[i]=0;
    				}
    			}
     
    		}
     
    		return mp;
    	}
     
    	//on lit la réponse dans une méthode
    	public void setReponse(int a) {
    		//cette boucle sert à effacer la combi définit par l'utilisateur 1		
    		for (int x=0; x<100; x++){
    			System.out.println("-------------------------");
    		}
    		// on définit le nombre d'el qui compose la réponse
    		reponse =new int[nbPions];
    		//on introduit
    		System.out.println("Joueur 2,vous allez définir votre réponse:");
    		// on comte le nombre d'esssai effectué
    		int essai=a;
    		// cran d'arrêt quand il aura trouvé la réponse
    		boolean arret=false;
    		//	ceci sert pour la lecture au clavier.
    		Scanner clavier = new Scanner (System.in);
    		// on donnes des valeurs à la reponse, il faut passer sur chaque positions du tab
    		for (int i=0;i<nbPions;i++){
    				System.out.print("Choisissez un chiffre entre 1 et "+nbCouleurs+"? ");
    				int tmp = clavier.nextInt();
    				// on teste si c'est > 0 ou < aux nombres de couleurs
    				while(tmp > nbCouleurs || tmp < 0) {
    					System.out.print("ATTENTION!!!Choisissez un chiffre entre 1 et "+nbCouleurs+"? ");
    					tmp = clavier.nextInt();
     
    				}
    				//si on sort de la boucle de vérification des couleurs
    					reponse[i]=tmp;
    		}
    				//je copies mon tableau de reponse afin de le modifier
    				System.arraycopy(reponse,0,copieReponse,0,nbPions);
    				System.arraycopy(combinaison,0,copieCombinaison,0,nbPions);
    				// on test le nombre de pions bien placés
    				if (bienPlaces()==nbPions){
    					System.out.println("Vous avez trouvé la combinaison!!!! FELICITATIONS");
    					//si true alors la combi a été trouvé et on arrete le jeu					
    					arret=true;
    					// on demande si il veut continuer à deviner?					
    					System.out.print("Continuer?[0(arreter)/1(continuer)]");
    					int go = clavier.nextInt();
    					if ( go ==1) { 
    						setPartie();
    						setReponse(0);	
    					}		
    				}
    				else{
    					System.out.println("le nombre de pions bien placés est "+bienPlaces()+".");
    					// on teste le nombre de pions mal placés
    					System.out.println("le nombre de pions mal placés est "+malPlaces()+".");
    					//on incremente les essais
    					essai++;			
    				}
    				// on demande si il veut continuer à deviner?					
    				System.out.print("Continuer?[0(arreter)/1(continuer)]");
    				int go = clavier.nextInt();
    				if ( go ==1) { 
    					// on fait x tentatives comme définit au début.
    					if( arret !=true && essai< nbTentatives ){
    						//on rappele la fonction avec le nb de tentatives effectués
    						setReponse(essai);
    					}
    					else{
    						getCombinaison();
    					}
    				}
    				else{
    					getCombinaison();				
    				}				
     
    	}
    	//	une méthode pour retourner la Reponse. On affiche chaque él du tableau
    	public void getReponse(){
    		System.out.print("la reponse est: ");
    		for (int i=0;i<nbPions;i++){
    			System.out.print(reponse[i]+" ");
    		}
    		System.out.println("");
    	}
     
     
    }
    Jeux ici le code qui affiche les cadres et les boutons

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    // j importe les biblio
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    
    //classe mère où les variables de bases sont définies. Elles seront rappelées par la suite
    public class Jeu {
    	//on déclare les variables suivantes qu'on aura besoin pour le jeu
    	protected int nbPions;
    	protected int nbCouleurs;
    	protected int nbTentatives;
    	
    	//on déclare un constructeur par défaut en initialisant les variables.
    	public Jeu(){ setJeu(4,5,5); }
    	// on déclare un constructeur dans le cas où les variables sont proposées
    	public Jeu( int a, int b, int c) { setJeu (a,b,c);}
    	// on déclare la méthode qui va initialiser toutes ces variables pour ce jeu (surcharge)
    	public void setJeu(int a, int b, int c){
    		
    		nbPions=a;
    		nbCouleurs=b;
    		nbTentatives=c;
    		
    	}
    	//on définit une méthode qui va initialiser la variable nbPions
    	public void setNbPions(int a){ nbPions=a;}
    	//on définit une méthode qui va initialiser la variable nbCouleurs
    	public void setNbCouleurs(int a){ nbCouleurs=a;}
    	//on définit une méthode qui va initialiser la variable nbTentatives
    	public void setNbTentatives(int a){ nbTentatives=a;}
    	//on définit une méthode qui retourne les variables demandées
    	public int getnbPions(){return nbPions;}
    	public int getnbCouleurs(){return nbCouleurs;}
    	public int getnbTentatives(){return nbTentatives;}
    	// on surcharge le TOstring
    	public String toString() { return "la classe est définie par nb de pions="+nbPions+" nb de couleurs="+nbCouleurs+" nb de tentatives="+nbTentatives;}
    	
    }
    
    //classe s occupant de la construction de la fenetre principale
    class FenetrePrincipale extends JFrame implements ActionListener{
    	//je crée la barre de menu
    	protected JMenuBar barreMenus;
    	//je crée les  menus
    	protected JMenu fichier, options, jeux, aide;
    	// je crée les sous menus	
    	protected JMenuItem nouveauJeu, ferme, definirTentatives, definirCouleurs, definirPions, definirCombinaison, about, nouveauJeuAvance;
    	//Je cree monJeu
     	private Partie monJeu = null;
    	// ********TEST***********
    	private JPanel pan;
    	//bouton repondre afin de proposer la solution
    	private JButton repondre, tester;
    	//constructeur par défaut
    	public FenetrePrincipale(){ 
    			
    		
    		// permettre la fermeture du programme sur la croix rouge 
    		addWindowListener(new WindowAdapter()
    				{ public void windowClosing (WindowEvent e)
    					{ System.exit(0);
    					}
    				});
    		setFenetre(); 
    		
    	}
    
    	//paramétrage de la fenetre
    	public void setFenetre(){
    		///je definis le titre
    		setTitle ("MasterMind");
    		//je definis la taille de la fenetre
    		setSize(800,600);
    		//creations de la barre de menus
    		barreMenus = new JMenuBar();
    		setJMenuBar(barreMenus);
    		//creations du  menu fichier et de ses sous menus
    		fichier = new JMenu("Fichier");
    		barreMenus.add(fichier);
    		
    		nouveauJeu = new JMenuItem("Nouveau Jeu");
    		fichier.add(nouveauJeu);
    		nouveauJeu.addActionListener(this);
    		
    		nouveauJeuAvance= new JMenuItem("Nouveau Jeu avancé");
    		fichier.add(nouveauJeuAvance);
    		nouveauJeuAvance.addActionListener(this);
    
    		ferme = new JMenuItem("Quitter");
    		fichier.add(ferme);
    		ferme.addActionListener(this);
    
    		//creations du menu  options et ses sous menus
    		options = new JMenu("Options");
    		barreMenus.add(options);
    		
    		definirTentatives = new JMenuItem("Définir un nombre de tentatives");
    		options.add(definirTentatives);
    		definirTentatives.addActionListener(this);
    
    		definirCouleurs = new JMenuItem("Définir un nombre de couleurs");
    		options.add(definirCouleurs);
    		definirCouleurs.addActionListener(this);
    
    		definirPions = new JMenuItem("Définir un nombre de pions");
    		options.add(definirPions);
    		definirPions.addActionListener(this);
    
    		//creations menu Jeux et sous menus
    		jeux = new JMenu("Jeux");
    		barreMenus.add(jeux);
    		
    		definirCombinaison= new JMenuItem("Définir votre combinaison");
    		jeux.add(definirCombinaison);
    		definirCombinaison.addActionListener(this);
    
    		//creation menu aide
    		aide = new JMenu("?");
    		barreMenus.add(aide);
    
    		about= new JMenuItem("About");
    		aide.add(about);
    		about.addActionListener(this);
    		this.setVisible(true);
    		
    		// on cree les panneaux de jeux
    		//le panneau principal (toute la fenetre)
    		Container c = getContentPane();
    		c.setLayout(new BorderLayout());
    		// on cree 5 panneaux
    		JPanel centre=new JPanel();
    		JPanel ouest= new JPanel();
    		JPanel sud= new JPanel();
    		JPanel nord = new JPanel();
    		JPanel est = new JPanel();
    		//on ajoute ces panneaux au panneau principal
    		c.add(centre,BorderLayout.CENTER);
    		c.add(nord,BorderLayout.NORTH);
    		c.add(ouest,BorderLayout.WEST);
    		c.add(est,BorderLayout.EAST);
    		c.add(sud,BorderLayout.SOUTH);
    		// on cree le bouton repondre
    		repondre= new JButton("Proposer");
    		tester = new JButton("Test");
    		//on ajout une methode d alignement au panneau sud
    		sud.setLayout(new FlowLayout(FlowLayout.RIGHT));
    		// on ajoute le bouton au panneau sud
    		sud.add(repondre);
    		centre.setLayout(new BorderLayout());
    		centre.add(tester,BorderLayout.EAST);
    		centre.setBackground(Color.red);
    		//pan= new Pion();
    		//c.add(pan,BorderLayout.WEST);
    		
    	}
    	//surcharge de ActionPerformed // ecouteur
    	public void actionPerformed (ActionEvent e){
    		Object source = e.getSource();
    		//si on clique sur nouvelle partie, on lance une nouvelle partie. 
    		if (source == nouveauJeu) { 
    			//on informe
    			JOptionPane.showMessageDialog(null, "Le nombre de pions est de 4, le nombre de couleurs est de 5, le nombre de tentatives est de 5");			
    			//Partie j;
    			monJeu=new Partie(4,5,5);
    		
    		}
    		// on permet la fermeture du programme
    		if (source == ferme){
    			//this.setVisible(false);
    			System.exit(0);
    		}
    		//si on clique sur nouvelle partie, on lance une nouvelle partie avance. 
    		if (source == nouveauJeuAvance) { 
    			// on definit le nombre de tentatives
    			String txtTentatives = JOptionPane.showInputDialog(null, "Donnez le nombre de tentatives autorisées:");
    			int tmpTentatives=Integer.parseInt(txtTentatives);
    			// on definit le nombre de couleurs autoriszs
    			String txtCouleurs = JOptionPane.showInputDialog(null, "Donnez le nombre de couleurs autorisées:");
    			int tmpCouleurs=Integer.parseInt(txtCouleurs);
    			// on definit le nombre de pions
    			String txtPions = JOptionPane.showInputDialog(null, "Donnez le nombre de pions autorisées:");
    			int tmpPions=Integer.parseInt(txtPions);
    			// on cree la nouvelle partie
    			monJeu=new Partie(tmpPions,tmpCouleurs,tmpTentatives);
    			
    		
    		}
    		// on permet la definition des nbTentatives	
    		if (source == definirTentatives){
    			String txt = JOptionPane.showInputDialog(null, "Donnez le nombre de tentatives autorisées:");
    			int tmp=Integer.parseInt(txt);
    			if (txt == null){
    				monJeu.setNbTentatives(5);			
    			}
    			else{
    				monJeu.setNbTentatives(tmp);
    							
    			}
    		}
    		// on permet la definition des nbCouleurs	
    		if (source == definirCouleurs){
    			String txt = JOptionPane.showInputDialog(null, "Donnez le nombre de couleurs autorisées:");
    			int tmp=Integer.parseInt(txt);			
    			if (txt == null){
    				monJeu.setNbCouleurs(5);			
    			}
    			else{
    				monJeu.setNbCouleurs(tmp);			
    			}
    		}
    		// on permet la definition des nbPions	
    		if (source == definirPions){
    			String txt = JOptionPane.showInputDialog(null, "Donnez le nombre de pions autorisées:");
    			int tmp=Integer.parseInt(txt);			
    			if (txt == null){
    				monJeu.setNbPions(4);			
    			}
    			else{
    				monJeu.setNbPions(tmp);			
    			}
    		}
    		// on permet la definition de la combinaison
    		if (source == definirCombinaison){
    				monJeu.setPartie();
    		}
    		// on permet la definition des nbTentatives	
    		if (source == about){
    			// on affiche une msgbox qui affiche un about
    		JOptionPane.showMessageDialog(null,"Powered by Benjamin Coudou V1.0");
    		}
    	}
    	//surcharge TOSTRING
    	public String toString() { return "La classe est la classe qui construit la fenetre principale";}
    }
    
    class Pion extends JPanel {
    	public void paintComponent(Graphics g) {
    		super.paintComponent(g);            
    		g.drawOval(130,60,110,50);
              }
             
    } 
    

  2. #2
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 111
    Par défaut
    pour afficher une grille tu prends un gridlayout. ensuite plutot que de t'amuser a faire un rond, le plus important est de gerer le master mind.

    alors fait un gridlayout(3,3) tu l'appliques sur un JPanel;
    puis tu colle 9 JLabel dedans.

    et pour tes croix ou rond tu change le texte des labels avec les caracteres X ou O.

    si apres tu veux faire ca tout beau (mais ca doit etre la derniere etape), tu remettra un message .

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    231
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 231
    Par défaut
    Je te remercie je vais tenter deja ca .

    Mais c est dans le sujet de l exercice de mettre les pions en visu donc avec des pions et de la couleur

Discussions similaires

  1. création d'une interface de dessin personalisé
    Par slimebdx dans le forum LabVIEW
    Réponses: 0
    Dernier message: 24/03/2011, 21h24
  2. Dessiner une interface web
    Par bipbip2006 dans le forum Modélisation
    Réponses: 2
    Dernier message: 02/02/2011, 19h51
  3. Réalisation d'une interface de dessin
    Par SandyF dans le forum Windows Presentation Foundation
    Réponses: 6
    Dernier message: 12/07/2010, 17h30
  4. [Débutant] comment dessiner sur une interface graphique ou détecter un contour
    Par habibi_esstt dans le forum MATLAB
    Réponses: 1
    Dernier message: 04/03/2010, 11h21
  5. Comment dessiner une petite interface de radar?
    Par jlassiramzy dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 26/06/2006, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo