Partage
  • Partager sur Facebook
  • Partager sur Twitter

ActionListener de JButton[][]

Sujet résolu
    19 novembre 2017 à 16:09:21

    Bonjour, j'ai un problème pour détecter un JButton dans un projet Java.

    Mon projet est un jeu qui utilise une centaine de JButton. Au clic sur l'un d'entre eux, certains doivent changer de couleur. Le but est qu'il soit tous de la même couleur. J'ai créé mes JButton grâce à une boucle, et j'ai tenté de coder les changements à faire en cas de clic, mais rien ne se produit ... Voici mon code pour le premier bouton par exemple :

    static JButton[][] bouton = new JButton[9][9];
    
    ...
    
    private void amp() {
    	for (int l = 0; l < 10 ; l++){
    		for (int c = 0; c < 10 ; c++) {
    			bouton[l][c] = new JButton("("+l+","+c+")");
    			int x = 9+((680-10)/10)*c+1 ;
    			int y = 9+((580-10)/10)*l+1;
    			int width = (680-10)/10;
    			int height = (580-10)/10;
    			bouton[l][c].setBounds(x, y, width, height);
    			bouton[l][c].setText("");
    			bouton[l][c].setVisible(true);
    			this.add(bouton[l][c]);
    		}
    	}	
    }
    
    ...
    
    @Override
    public void actionPerformed(ActionEvent e) {
    	if (e.getSource()== bouton[0][0]) {
    		bouton[0][0].setBackground(Color.BLUE);
    	}
    }

    Merci d'avance !

    -
    Edité par NicolasReiriop 19 novembre 2017 à 16:23:23

    • Partager sur Facebook
    • Partager sur Twitter
      19 novembre 2017 à 17:29:27

      Salut. Tu n'as pas ajouté de listener aux boutons

      bouton[l][c].addActionListener(this);
      • Partager sur Facebook
      • Partager sur Twitter

      ActionListener de JButton[][]

      × 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