В игре на линкоре вы, скорее всего, захотите получить расположение кнопки после нажатия на нее. Вы можете создать хеш-таблицу, используя ваши кнопки в качестве ключей и точку, в которой она находится, в качестве значения.
HashMap<JButton, Point> buttonMap = new HashMap<JButton, Point>();
for (int x = 0; x < COLUMNS; x++)
{
for (int y = 0; y < ROWS; y++)
{
JButton btn = new JButton();
btn.addActionListener(this);
buttonMap.put(btn, new Point(x, y));
//then add the button to your container
}
}
В вашем методе actionPerformed вы можете преобразовать кнопку в точку, в которой она расположена следующим образом.
JButton btn = (JButton)actionEvent.getSource();
Point p = buttonMake.get(btn);
Конечно, вам нужно будет правильно обрабатывать ошибки, такие как источник не является кнопкой или кнопка не находится на карте ...