problème séquence fenêtres Java
Bonjour,
j'ai un petit souci de programmation Java: je voudrais faire une séquence de trois fenetres qui s'enchainent, j'arrive à en faire deux mais pas trois...
Dans ma premeiere fenetre il y a (entre autre) un bouton sur lequel j'appuie, ce qui efface tous les objets de la fenetre et en affiche d'autres, en l'occurence d'autres boutons. Je voudrais, lorrsque j'appuie sur un de ces boutons, faire la même séquence: la fenetre se vide, puis affche d'autres objets; c'est là que je bloque.
Voici mon code:
Code:
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
|
import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class Fenetre2 implements ActionListener{
//attributs
private JFrame fenetre;
private JButton boutonA;
private JLabel texte0, texte1, texte2;
private JTextField champA, champB;
private Dimension dimension;
//constructeur
public Fenetre2() {
this.fenetre=new JFrame("Bourse Willis");
this.texte0=new JLabel("Bienvenue sur Bourse Willis",SwingConstants.CENTER);
this.texte1=new JLabel("Veuillez renter votre numéro client:");
this.texte2=new JLabel("Mot de passe:");
this.champA=new JTextField(20);
this.champB=new JTextField(20);
this.dimension=new Dimension(100,100);
this.boutonA=new JButton("login");
Container conteneur = fenetre.getContentPane();
GridLayout disposition = new GridLayout(10,1);
conteneur.setLayout(disposition);
//on ajoute tout
conteneur.add(this.texte0);
texte0.setMinimumSize(dimension);
conteneur.add(this.texte1);
conteneur.add(this.champA);
conteneur.add(this.texte2);
conteneur.add(this.champB);
conteneur.add(this.boutonA);
boutonA.addActionListener(this);
this.fenetre.setBounds(20,40,300,300);
this.fenetre.setVisible(true);
}
//méthode
public void actionPerformed(ActionEvent e){
Container conteneur = fenetre.getContentPane();
//premier changement
if (e.getSource()==boutonA) {
//on enlève tout
conteneur.removeAll();
fenetre.repaint();
//on rajoute tout
JButton boutonB=new JButton("acheter");
conteneur.add(boutonB);
boutonB.addActionListener(this);
conteneur.validate();
fenetre.repaint();
//deuxieme changement
if(e.getSource()==boutonB){
System.out.println("ca marche?");
conteneur.removeAll();
fenetre.repaint();
//on rajoute tout
JButton boutonG=new JButton("choix entreprise");
conteneur.add(boutonG);
conteneur.validate();
fenetre.repaint();
}
}
}
} |
En fait j'ai deux 'if' imbriqués l'un dans l'autre, le premier marche (le boutonB est créé), mais le deuxieme ne marche pas (le boutonB reste à l'écran,'ca marche?' ne s'affiche pas, le boutonG ne s'affiche pas).
Pouvez-vous m'aider svp?