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 :

Différents problèmes dans un GUI


Sujet :

AWT/Swing Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Par défaut Différents problèmes dans un GUI
    Bonjour, je dois créer une interface graphique.
    J'ai alors créé un Jframe avec une JMenuBar et un Jpanel vide.
    A l'aide un actionListener basée sur les options du Jmenubar, le programme ferme la fenetre pour en ouvrir une autre (identique) mais avec un JPanel cette fois ci non vide. Il y a présence d'un JTextArea par exemple.
    Or, ce JTextArea, je dois recupérer l'information ecrit dessus suite à un bouton Valider. Information que je dois en suite comparer à une liste.
    Et j'avoue etre assez largué même apres lecture de la FAC, des recherches sur le site de sun.java.
    En gros, j'ai du mal a modéliser mon sujet. C'est à dire, comment recuperer les données et les comparés. J'ai pensé a créer une classe ( implements Comparable ) avec un compareTo ensuite. Mais je suis bloqué pour recuperer les données donnés par l'utilisateur du programme.
    Mon second problème est assez simple. Suite à un actionListener d'un JMenuItem, je crée un JScrollPane à la place d'un JPanel étant donnée que ma fenetre sera trop petite pour afficher les informations obtenues suites à la comparaison. Je n'arrive pas d'abord à afficher quoique se soit dans mon JScrollPane, et de plus encore moins des informations obtenus precedemment.
    Merci de votre aide, voici mon code :

    La Classe Menu :
    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
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.event.KeyEvent;
     
    import javax.swing.AbstractButton;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JMenuItem;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
     
    public class Menu {
    	JTextArea output1, output2, output3, output4, output5, output6, output7,
    			output8;
    	JScrollPane scrollPane, jScrollPane1;
    	JTextField entry;
    	JLabel jLabel1, jLabel2, jLabel3, jLabel4, jLabel5, jLabel6;
     
    	static JFrame frame = new JFrame(
    			"Bienvenue sur l Interface des Relais de France");
     
    	public JMenuBar createMenuBar() {
    		JMenuBar menuBar;
    		JMenu fichier, outils;
    		JMenuItem nr, supr, aff, trpp, edit, trelais, prelais, exit;
    		menuBar = new JMenuBar();
     
    		fichier = new JMenu("Fichier");
    		menuBar.add(fichier);
     
    		nr = new JMenuItem("Nouveau Relais");
    		fichier.add(nr);
    		supr = new JMenuItem("Supprimer Relais");
    		fichier.add(supr);
    		fichier.addSeparator();
    		exit = new JMenuItem("Quitter l'application");
    		fichier.add(exit);
     
    		outils = new JMenu("Outils");
    		menuBar.add(outils);
     
    		edit = new JMenuItem("Editer un Relais");
    		outils.add(edit);
    		aff = new JMenuItem("Afficher les Relais");
    		outils.add(aff);
    		outils.addSeparator();
     
    		trpp = new JMenu("Trouver Relais");
    		trelais = new JMenuItem("Le plus proche");
    		trpp.add(trelais);
    		prelais = new JMenuItem("Dans un perimètre");
    		trpp.add(prelais);
    		outils.add(trpp);
     
    		Moteur moteur = new Moteur(null);
    		nr.addActionListener(moteur);
    		supr.addActionListener(moteur);
    		aff.addActionListener(moteur);
    		exit.addActionListener(moteur);
    		trelais.addActionListener(moteur);
    		prelais.addActionListener(moteur);
    		edit.addActionListener(moteur);
     
    		return menuBar;
    	}
    public JPanel Ajouter() {
     
    		JPanel contentPane = new JPanel(new FlowLayout());
    		JLabel jLabel1 = new JLabel();
    		JLabel jLabel2 = new JLabel();
    		JLabel jLabel3 = new JLabel();
    		JLabel jLabel4 = new JLabel();
    		JLabel jLabel5 = new JLabel();
    		JLabel jLabel6 = new JLabel();
     
    		output1 = new JTextArea();
    		output1.setColumns(10);
    		output1.setLineWrap(true);
    		output1.setRows(1);
    		output1.setWrapStyleWord(true);
    		output1.setEditable(true);
     
    		output2 = new JTextArea();
    		output2.setColumns(10);
    		output2.setLineWrap(true);
    		output2.setRows(1);
    		output2.setWrapStyleWord(true);
    		output2.setEditable(true);
     
    		output3 = new JTextArea();
    		output3.setColumns(10);
    		output3.setLineWrap(true);
    		output3.setRows(1);
    		output3.setWrapStyleWord(true);
    		output3.setEditable(true);
     
    		output4 = new JTextArea();
    		output4.setColumns(10);
    		output4.setLineWrap(true);
    		output4.setRows(1);
    		output4.setWrapStyleWord(true);
    		output4.setEditable(true);
     
    		output5 = new JTextArea();
    		output5.setColumns(10);
    		output5.setLineWrap(true);
    		output5.setRows(1);
    		output5.setWrapStyleWord(true);
    		output5.setEditable(true);
     
    		output6 = new JTextArea();
    		output6.setColumns(10);
    		output6.setLineWrap(true);
    		output6.setRows(1);
    		output6.setWrapStyleWord(true);
    		output6.setEditable(true);
     
    		output7 = new JTextArea();
    		output7.setColumns(10);
    		output7.setLineWrap(true);
    		output7.setRows(1);
    		output7.setWrapStyleWord(true);
    		output7.setEditable(true);
     
    		output8 = new JTextArea();
    		output8.setColumns(10);
    		output8.setLineWrap(true);
    		output8.setRows(1);
    		output8.setWrapStyleWord(true);
    		output8.setEditable(true);
     
    		jLabel3
    				.setText("____________________________________________________________________");
    		jLabel5
    				.setText("____________________________________________________________________");
    		jLabel6
    				.setText("____________________________________________________________________");
    		jLabel4
    				.setText("Ajouter les services proposés par le Relais :           ");
    		jLabel1
    				.setText("Veuillez inscrire l abscisse et l ordonnée du relais sous cette forme :");
    		jLabel2.setText("x,y");
     
    		contentPane.add(jLabel3);
    		contentPane.add(jLabel1);
    		contentPane.add(jLabel2);
    		contentPane.add(output1);
    		contentPane.add(jLabel5);
    		contentPane.add(jLabel4);
    		contentPane.add(output2);
    		contentPane.add(output3);
    		contentPane.add(output4);
    		contentPane.add(output5);
    		contentPane.add(output6);
    		contentPane.add(output7);
    		contentPane.add(output8);
    		contentPane.add(jLabel6);
     
    		JButton b, b2;
    		b = new JButton("annuler");
    		b.setVerticalTextPosition(AbstractButton.BOTTOM);
    		b.setHorizontalTextPosition(AbstractButton.LEFT);
    		b.setMnemonic(KeyEvent.VK_M);
    		contentPane.add(b);
     
    		b2 = new JButton("Valider");
    		b2.setVerticalTextPosition(AbstractButton.BOTTOM);
    		b2.setHorizontalTextPosition(AbstractButton.RIGHT);
    		b2.setMnemonic(KeyEvent.VK_M);
    		contentPane.add(b2);
    		Moteur moteur = new Moteur(null);
    		b.addActionListener(moteur);
    		b2.addActionListener(moteur);
     
    		return contentPane;
    	}
    public JScrollPane affichage() {
     
    		JScrollPane contentPane = new JScrollPane();
    		contentPane
    		.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    contentPane.setPreferredSize(new Dimension(250, 155));
    contentPane.setMinimumSize(new Dimension(10, 10));
    		JLabel jLabel1 = new JLabel();
    		JLabel jLabel3 = new JLabel();
    		JLabel jLabel4 = new JLabel();
    		JLabel jLabel5 = new JLabel();
    		JLabel jLabel6 = new JLabel();
     
    		output1 = new JTextArea();
    		output1.setColumns(10);
    		output1.setLineWrap(true);
    		output1.setRows(1);
    		output1.setWrapStyleWord(true);
    		output1.setEditable(false);
     
    		output2 = new JTextArea();
    		output2.setColumns(10);
    		output2.setLineWrap(true);
    		output2.setRows(1);
    		output2.setWrapStyleWord(true);
    		output2.setEditable(true);
     
    		output3 = new JTextArea();
    		output3.setColumns(10);
    		output3.setLineWrap(true);
    		output3.setRows(1);
    		output3.setWrapStyleWord(true);
    		output3.setEditable(true);
     
    		output4 = new JTextArea();
    		output4.setColumns(10);
    		output4.setLineWrap(true);
    		output4.setRows(1);
    		output4.setWrapStyleWord(true);
    		output4.setEditable(true);
     
    		output5 = new JTextArea();
    		output5.setColumns(10);
    		output5.setLineWrap(true);
    		output5.setRows(1);
    		output5.setWrapStyleWord(true);
    		output5.setEditable(true);
     
    		output6 = new JTextArea();
    		output6.setColumns(10);
    		output6.setLineWrap(true);
    		output6.setRows(1);
    		output6.setWrapStyleWord(true);
    		output6.setEditable(true);
     
    		output7 = new JTextArea();
    		output7.setColumns(10);
    		output7.setLineWrap(true);
    		output7.setRows(1);
    		output7.setWrapStyleWord(true);
    		output7.setEditable(true);
     
    		output8 = new JTextArea();
    		output8.setColumns(10);
    		output8.setLineWrap(true);
    		output8.setRows(1);
    		output8.setWrapStyleWord(true);
    		output8.setEditable(true);
     
    		jLabel3
    				.setText("____________________________________________________________________");
    		jLabel5
    				.setText("____________________________________________________________________");
    		jLabel6
    				.setText("____________________________________________________________________");
    		jLabel4
    				.setText("Editer les services proposés par le Relais :           ");
    		jLabel1.setText("Ici, l abscisse et l ordonnée du relais :");
    		contentPane.add(jLabel3);
    		contentPane.add(jLabel1);
    		contentPane.add(output1);
    		contentPane.add(jLabel5);
    		contentPane.add(jLabel4);
    		contentPane.add(output2);
    		contentPane.add(output3);
    		contentPane.add(output4);
    		contentPane.add(output5);
    		contentPane.add(output6);
    		contentPane.add(output7);
    		contentPane.add(output8);
    		contentPane.add(jLabel6);
     
    		JButton b, b2;
    		b = new JButton("annuler");
    		b.setVerticalTextPosition(AbstractButton.BOTTOM);
    		b.setHorizontalTextPosition(AbstractButton.LEFT);
    		b.setMnemonic(KeyEvent.VK_M);
    		contentPane.add(b);
     
    		b2 = new JButton("Valider");
    		b2.setVerticalTextPosition(AbstractButton.BOTTOM);
    		b2.setHorizontalTextPosition(AbstractButton.RIGHT);
    		b2.setMnemonic(KeyEvent.VK_M);
    		contentPane.add(b2);
    		Moteur moteur = new Moteur(null);
    		b.addActionListener(moteur);
    		b2.addActionListener(moteur);
     
    		return contentPane;
    	}
     
    	public static void creation() {
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    		Menu demo = new Menu();
    		frame.setJMenuBar(demo.createMenuBar());
    		frame.setLocationRelativeTo(null);
    		frame.setVisible(true);
    		// frame.setContentPane(demo.createContentPane());
     
    		frame.setSize(430, 300);
    		// frame.setVisible(true);
    	}
     
    	public static void main(String[] args) {
     
    		javax.swing.SwingUtilities.invokeLater(new Runnable() {
    			public void run() {
    				creation();
    			}
    		});
    	}
    }
    Et ma Classe Moteur :
    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
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
     
    import javax.swing.JFrame;
    import javax.swing.JOptionPane;
     
    public class Moteur implements ActionListener {
     
    	static JFrame frameA = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame frameS = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame framee = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame frameV = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame framea = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame framel = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame framed = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	static JFrame frameb = new JFrame(
    			"Bienvenue sur l'Interface des Relais de France");
    	Menu monMenu;
     
    	public Moteur(Menu m) {
    		monMenu = m;
    	}
     
    	public void actionPerformed(ActionEvent evenement) {
    		Menu.frame.dispose();
    		Moteur.frameA.dispose();
    		Moteur.frameS.dispose();
    		Moteur.frameV.dispose();
    		Moteur.framea.dispose();
    		Moteur.framee.dispose();
    		Moteur.framel.dispose();
    		Moteur.framed.dispose();
    		Moteur.frameb.dispose();
    		switch (evenement.getActionCommand().charAt(0)) {
     
    		case 'N':
    			frameA.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu aj = new Menu();
    			frameA.setJMenuBar(aj.createMenuBar());
    			frameA.setContentPane(aj.Ajouter());
    			frameA.setLocationRelativeTo(null);
    			frameA.setVisible(true);
    			frameA.setSize(430, 300);
    			break;
    		case 'S':
    			frameS.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu supr = new Menu();
    			frameS.setJMenuBar(supr.createMenuBar());
    			frameS.setContentPane(supr.Suprimer());
    			frameS.setLocationRelativeTo(null);
    			frameS.setVisible(true);
    			frameS.setSize(430, 300);
    			break;
    		case 'V':
     
    			JOptionPane.showMessageDialog(new JFrame(),
    					"Relais ajouté à la base de donnée :");
    			frameV.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    			Menu ccc = new Menu();
    			frameV.setJMenuBar(ccc.createMenuBar());
    			frameV.setLocationRelativeTo(null);
    			frameV.setVisible(true);
    			frameV.setSize(430, 300);
    			break;
    		case 'a':
    			framea.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu aaa = new Menu();
    			framea.setJMenuBar(aaa.createMenuBar());
    			framea.setLocationRelativeTo(null);
    			framea.setVisible(true);
    			framea.setSize(430, 300);
    			break;
    		case 'E':
    			framee.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu eee = new Menu();
    			framee.setJMenuBar(eee.createMenuBar());
    			framee.setContentPane(eee.edit());
    			framee.setLocationRelativeTo(null);
    			framee.setVisible(true);
    			framee.setSize(430, 300);
    			break;
    		case 'L':
    			framel.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu lll = new Menu();
    			framel.setJMenuBar(lll.createMenuBar());
    			framel.setLocationRelativeTo(null);
    			framel.setContentPane(lll.plusproche());
    			framel.setVisible(true);
    			framel.setSize(430, 300);
    			break;
    		case 'D':
    			framed.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu ddd = new Menu();
    			framed.setJMenuBar(ddd.createMenuBar());
    			framed.setLocationRelativeTo(null);
    			framed.setContentPane(ddd.perimetre());
    			framed.setVisible(true);
    			framed.setSize(430, 300);
    			break;
    		case 'A':
    			frameb.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    			Menu bbb = new Menu();
    			frameb.setJMenuBar(bbb.createMenuBar());
    			frameb.setLocationRelativeTo(null);
    			frameb.setContentPane(bbb.affichage());
    			frameb.setVisible(true);
    			frameb.setSize(430, 300);
     
    			break;
    		}
    	}
    }

  2. #2
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Par défaut
    Citation Envoyé par boxydruM Voir le message
    A l'aide un actionListener basée sur les options du Jmenubar, le programme ferme la fenetre pour en ouvrir une autre (identique) mais avec un JPanel cette fois ci non vide.
    Pourquoi ne pas simplement remplir la fenêtre ? (plutot que de fermer cette fenetre pour en ouvrir une autre). Dans un programme, il vaut mieux une JFrame unique !
    Ou bien, tu peux ouvrir une nouvelle fenetre par dessus la première pour présenter ton nouveau formulaire à l'utilisateur. Regarde du coté de JDialog et/ou JOptionPane (la 2° classe étant assez simple d'utilisation (mais assez limitée aussi)).

    Je ne connais pas ton niveau en développement mais, si je peux me permettre, il y a de très grosses erreurs de conception.
    Entre autre,
    - éviter les méthodes JPanel ajouter() : ajouter quoi ? renvoie un JPanel de quoi ?
    - renommer tes classes : une classe Menu qui est en fait un launcher de JFrame.... et la classe Moteur qui fait..heu...
    Essaie d'éclaircir un peu les fonctionnalités que tu veux avoir et je pense que tes classes vont s'écrire quasiment toute seul.
    Bon courage en tout cas

  3. #3
    Membre chevronné Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Par défaut
    Par contre il y a une chose qui me fait bondir, c'est l'initialisation des variables, certes le compilateur est censé le faire, mais ca mange pas de pain.

    De plus un conseil créé un petit object GuiTools par exemple qui va te creer des éléments, notamment pour ce bout de code répété x fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    output1 = new JTextArea();
    		output1.setColumns(10);
    		output1.setLineWrap(true);
    		output1.setRows(1);
    		output1.setWrapStyleWord(true);
    		output1.setEditable(false);
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public static JTextArea createTextArea(int column,boolean Lwrap,int row,boolean Wwrap,boolean editable)
        {
            JTextArea retour = new JTextArea();
            retour .setColumns(column);
    	retour .setLineWrap(Lwrap);
    	retour .setRows(row);
    	retour .setWrapStyleWord(Wwrap);
    	retour .setEditable(editable);
            return retour;
        }
    de meme pour tous les composants que tu créé à la main, ça va déjà simplifier la lecture du code.

    Pour ton problème, le mieux est (comme dit au dessus) de rester dans la même frame.

    Mais ne serait ce pas une application de type MDI que tu souhaiterais faire ?
    Si oui c'est un JdesktopPane qu'il faut mettre pour y ajouter des JInternalFrame.
    Bon courage.

Discussions similaires

  1. problèmes dans interface GUI
    Par sofsof dans le forum Interfaces Graphiques
    Réponses: 16
    Dernier message: 13/03/2010, 21h49
  2. problème insertion d'image dans la GUI
    Par biwi8272 dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 05/02/2009, 17h26
  3. probléme dans le gui
    Par lionnaa dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 29/05/2008, 10h09
  4. Problème avec 'light' sur un patch dans un GUI
    Par pierolapuree dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 16/02/2007, 14h35
  5. Réponses: 10
    Dernier message: 08/12/2006, 02h18

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