У меня есть JPanel с Расположением Сетки. В "ячейках" сетки я могу поместить различные элементы (например, JButtons). Нет никаких проблем с этим. Но теперь я хочу поместить заполненный круг в некоторые ячейки. Я также хотел бы связать ActionListener с этими кругами. Более подробно, если я нажимаю круг, он исчезает из текущей ячейки и появляется в другом. Как я могу сделать это в Java? Я использую Swing.
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D)g;
// Assume x, y, and diameter are instance variables.
Ellipse2D.Double circle = new Ellipse2D.Double(x, y, diameter, diameter);
g2d.fill(circle);
...
}
Вот несколько документов о paintComponent ( ссылка ).
Вы должны переопределить этот метод в JPanel и сделать что-то похожее на приведенный выше фрагмент кода.
В ActionListener вы должны указать x, y, диаметр
и вызвать repaint ()
.