Partage
  • Partager sur Facebook
  • Partager sur Twitter

Saleté de bouton !

Sujet résolu
    13 mars 2022 à 16:25:58

    Bonjour à tous, 

    je suis actuellement la tête plongée dans le Java Swing. Mais là je bloque complet. 

    Voici la fonction __Bouton__ qui, comme son nom l'indique, crée un bouton.

    public class __button__ extends JButton implements ActionListener {
    JLabel label = new JLabel();


    public __button__(String str){
    super(str);

    }

    public void actionPerformed(ActionEvent e) {
    System.out.println("Oui là on est bon");
    label.setText("J'ai clique sur le bouton");

    }
    }

    et voici la fonction __window__ qui se contente de l'afficher

    public class __window__  extends JFrame implements ActionListener {
    private __panneau__ panel = new __panneau__();
    __button__ boutton = new __button__("Et voila !");


    public __window__(){
    this.setTitle("Nouvel onglet");
    this.setSize(800, 600);
    this.setLocationRelativeTo(null);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);


    this.setContentPane(panel);
    this.getContentPane().add(boutton);
    }

    @Override
    public void actionPerformed(ActionEvent e) {
    System.out.println("J'ai clique sur le bouton");
    }
    }

    Je me contente, dans __window__, d'appeler la classe __button__ qui me dessine un beau bouton. 

    Dans le but d'obtenir une action de la part de ce malheureux bouton, j'ai la fonction actionPerformed qui DEVRAIT afficher "J'ai clique sur le bouton" dans le terminal. 

    Ce n'est pas le cas. Je m'arrache les cheveux depuis 2h la dessus, pas moyen. Le probleme se situe probablement dans la construction et l'agencement des fonctions. J'ai même tente de mettre la fonction actionPerformed dans la classe  __window__.

    Pourriez-vous m'aider ?

    merci d'avance

    [REOLU]: Comme cela m'arrive à chaque fois, j'ai fini par trouver la réponse 2min après avoir ouvert ce sujet...

    Je n'avais pas écrit la ligne:

    this.addActionListener(this);

    dans 

    public __button__(String str){
    super(str);
    this.addActionListener(this);

    }

    -
    Edité par Optilium 13 mars 2022 à 16:43:22

    • Partager sur Facebook
    • Partager sur Twitter
      13 mars 2022 à 16:57:34

      Bonjour

      Pourrais-tu s'il te plait

      • mettre des sources complets  (il manque __panneau__)
      • mettre tous les imports
      • nommer correctement les classes, il y a des normes à respecter. Leur nom doit commencer par une majuscule => Panneau, Bouton, Fenetre
      • les formater normalement
      comme ça on pourra envisager d'essayer de compiler ton source pour y trouver les problèmes. Parce qu'on veut bien aider, mais pas passer une heure à faire le ménage et imaginer les trucs qui manquent.

      -
      Edité par michelbillaud 13 mars 2022 à 16:59:49

      • Partager sur Facebook
      • Partager sur Twitter

      Saleté de bouton !

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown