CircleListenerは、パネルクラスの内部クラスで、MouseListenerインターフェイスが含まれています。 MouseRelasedメソッドは、クリックされた領域が円で囲まれているかどうかをチェックし、そうであればそのシェイプを選択して選択し、選択した領域を削除します。Java GUI - MouseListenerとActionListenerは同じクラスにありますか?
ここでは、「timer」オブジェクトを使用してランダムなサイズの円をこのパネルに追加するためにActionListenerが必要です。 質問: "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
}
はまた、それだけで良いオブジェクト指向の練習で
Timer
イベントに応答するものであるということです。 :) –