我試圖讓國際象棋程序在那裏我有JPanels這都需要一個addMouseListener將但在這addMouseListener將我需要利用數組的索引,它的工作,像這樣的一個8x8的陣列:如何在JPanel數組的元素上使用addMouseListener而不將其添加到每個單個元素。
panels[0][0].addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
panels[0][0].setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
}
public void mouseReleased(MouseEvent e) {
}
});
由於我有64個JPanel,這意味着我需要複製這63次,可能的更改也需要複製。有沒有更好,更有效的方法來實現這一目標?
1)*「自我有64個JPanels「*使用'JButton'組件代替面板,使用'ActionListener'而不是'MouseListener',以及一個工廠方法來將偵聽器添加到每個按鈕。 .2)另請參見[製作健壯的,可調整大小的Swing Chess GUI](http://stackoverflow.com/q/21142686/418556)。 –