Addactionlistener akzeptiert keine Parameter
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class Concentration extends JFrame implements ActionListener {
private JButton buttons[][]=new JButton[4][4];
int i,j,n;
public Concentration() {
super ("Concentration");
JFrame frame=new JFrame();
setSize(1000,1000);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel=new JPanel(new GridLayout(4,4));
panel.setSize(400, 400);
for( i=0; i<buttons.length; i++){
for (j=0; j<buttons[i].length;j++){
n=i*buttons.length+buttons[i].length;
buttons[i][j]=new JButton();
panel.add(buttons[i][j]);
buttons[i][j].addActionListener(this);
}
}
add(panel);
pack();
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
buttons[i][j].setIcon(new ImageIcon(
getClass().getResource("/images/2.jpg")));
}
public static void main(String args[]){
new Concentration();
}
}
Das ist mein Code. Ich mache ein Gedächtnisspiel. Ich möchte, dass jedes Mal, wenn ich auf eine Schaltfläche klicke, diese Schaltfläche aber ein Bild anzeigt
buttons[i][j].addActionListener(this);
in diesem Fall kann methot i und j nicht aufnehmen und zeigt kein Bild.
Aber zum Beispiel, wenn ich es tue
buttons[2][2].addActionListener(this);
es zeigt nur in 2x2. Bild. Was kann ich tun, um das zu lösen?