30個のボタンのグリッドがあり、左から右に、次に右から左に、さらに左から右に下に移動したいと思います。基本的に、番号付けは次のようになります。
1 2 3 4 5 6 7 8 9 10
20 19 18 17 16 15 14 13 12 11
21 22 23 24 25 26 27 28 29 30
したがって、ボタン10にピースがあり、2ビット上に移動するように指示すると、19ではなく12に到達します。
以下は私のコードです:
//Creates the button using the loop, adds it into the panel and frame.
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(3,10));
JButton [] buttons = new JButton[30];
for(int i=0;i<30;i++){
buttons[i] = new JButton("label" + i);
buttons[i].setBackground(Color.white);
//Puts the player 1 piece on button 1,3,5,7,9 and player 2 piece on button 2,4,6,8,10
if (i < 10) {
if (i%2 == 0) {
buttons[i].setIcon(piece1);
} else {
buttons[i].setIcon(piece2);
}
}
panel.add(buttons[i]);
}
frame.add(panel, BorderLayout.CENTER);