Я пытаюсь сделать игру, как bejeweled или candycrush для домашней работы. Я хочу изменить фотографии нажатых двух кнопок. Например, я нажал buttons[5]
, и я нажал buttons[11]
. Тогда значок buttons[5]
должен быть buttons[11]
значок и значок [11]
должен быть buttons[5]
значок. поэтому мне нужны два взаимосвязанных ActionListener
. Как я могу сделать?Взаимосвязанные два ActionListener
public class butondeneme extends JFrame{
private JPanel grid;
private JFrame jr;
public String x,y;
public butondeneme(){
jr=new JFrame();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 640, 640);
grid=new JPanel();
grid.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
grid.setLayout(new GridLayout(8,8,5,5));
JButton[] buttons = new JButton[64];
for (int i = 0; i<buttons.length; i++) {
Random r = new Random();
int a = r.nextInt(9)+1;
switch(a){
case 1 : buttons[i]=new JButton(new ImageIcon("img//Cakal.png"));
break;
case 2 : buttons[i]=new JButton(new ImageIcon("img//BugsBunny.png"));
break;
case 3 : buttons[i]=new JButton(new ImageIcon("img//Pig.png"));
break;
case 4 : buttons[i]=new JButton(new ImageIcon("img//Taz.png"));
break;
case 5 : buttons[i]=new JButton(new ImageIcon("img//Sam.png"));
break;
case 6 : buttons[i]=new JButton(new ImageIcon("img//DuffyDuck.png"));
break;
case 7 : buttons[i]=new JButton(new ImageIcon("img//Tweety.png"));
break;
case 8 : buttons[i]=new JButton(new ImageIcon("img//Slyvester.png"));
break;
case 9 : buttons[i]=new JButton(new ImageIcon("img//RoadRunner.png"));
break;
}
String comand=Integer.toString(i);
final String imgName=((ImageIcon)buttons[i].getIcon()).toString();
buttons[i].addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
buttons[i].setActionCommand(comand);
grid.add(buttons[i]);
}
add(grid);
}
public static void main(String[] args){
butondeneme erdem=new butondeneme();
erdem.setVisible(true);
}
}
большое спасибо. Я был тем, чего хотел. Однако я не понял Model-view-conroller, потому что теперь я не очень хорошо разбираюсь в java. Тем не менее, большое спасибо. – rdmzcn