CircleListener - это внутренний класс в классе панели, и теперь он включает интерфейс MouseListener. Метод MouseRelased проверяет, окружена ли зона щелчка окружностью, и если это так, что эта фигура будет выбрана и удалит выбранные.Java GUI - MouseListener и ActionListener можно в одном классе?
Теперь мне нужно, чтобы ActionListener добавлял круги с произвольным размером к этой панели с объектом «timer». Вопрос: Возможно ли реализовать «ActionListener» для CircleListener или лучше создать другой внутренний класс для «ActionListener»?
Заранее спасибо
private class CircleListener implements MouseListener
{
ShapesCanvas canvas;
ShapeContainer container;
Shape possibleShape;
private CircleListener(ShapesCanvas canv, ShapeContainer cont)
{
this.canvas = canv;
this.container = cont;
}
public void MouseRelased (MouseEvent e)
{
possibleShape = container.contains(e.getX(), e.getY());
if(possibleShape != null)
{
((Selectable)possibleShape).setSelected(true);
container.removeSelected();
}
canvas.repaint(); //repaints the last situation
}
Также является только хорошим объектом ориентации практики. :) –