action de l'auditeur dans une autre classe java

il est possible d'avoir deux classes, et en un quelque chose comme

arrayButtons[i][j].addActionListener(actionListner);

et dans un autre

ActionListener actionListner = new ActionListener() {
        public void actionPerformed(ActionEvent e) {

            for (int j = 0; j < arrayButtons.length; j++) {
                for (int i = 0; i < arrayButtons[j].length; i++) {
                    if (arrayButtons[j][i] == e.getSource()) {

                        if ((gameNumber == 2) && (playHand.getNumberOfCards() == 0)) {
                            if (player[j].getCard(i).getSuit() == Suit.HEARTS.toString() && player[j].hasSuitBesideHearts())
                                //second game
                                messageOnTable("xxx");

                            else{
                                arrayButtons[j][i].setVisible(false);
                                test[j].setIcon(player[j].getCard(i).getImage());
                                pnCardNumber[j].setText(Integer.toString(player[j].getCard(i).getNumber()));
                                pnCardName[j].setText(player[j].getCard(i).toString());
                                pnCardSuit[j].setText(player[j].getCard(i).getSuit());

                                playHand.addCard(player[j].getCard(i), j);

                                player[j].removeCard(i);

                            }

                        }

}

//et plus
la raison de cela est parce que j'ai besoin de séparer le bouton (swing) à l'action de l'auditeur

comment je peux faire ?

grâce

Oui, vous pouvez utiliser ActionListeners à partir d'autres classes ou d'avoir une classe implémente l'interface ActionListener, mais le diable est dans les détails. Nous pourrons plus facilement vous conseiller sur la façon de le faire que si nous connaître plus de détails au sujet de votre programme.

OriginalL'auteur user455318 | 2011-02-13