하나의 EventListener는 내가 모든 초기화 물건을, JButton의 여러 JButton의 자바
JButton[][] ledBtns = new JButton[8][8];
그리고 루프에서
의 2 차원 배열을 가지고있다. 이제 Button을 클릭 할 때 발생하는 각 JButton에 EventListener를 추가하려고합니다. 그런 다음 버튼의 이미지를 변경하고 싶습니다.for(int i = 0; i < ledBtns.length; i++){
for(int j = 0; j < ledBtns[i].length; j++){
//init stuff
ledBtns[i][j].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
changeImage();
}
});
}
}
이제 'changeImage()'가 호출되지만 어떤 버튼이 있는지 알아야합니다. 매개 변수를 사용할 수 없습니다. 매개 변수를 '최종'으로 선언하는 경우 매개 변수를 사용할 수 없습니다. 정확하게 똑같은 64 가지 메소드를 작성하고 각 JButton에 수동으로 추가하는 것보다 다른 방법이 있습니까?
+1 플러스 JButton을 ButtonModel, HashMap, Action, setName 또는 putClientProperty()에 넣습니다. – mKorbel