从 mousedragged 保存所有 x 和 y 点

Saving all x and y points from mousedragged

我在拖动鼠标的地方有这个,它基本上以小椭圆形或矩形的形状绘制,但我不确定如何让它保存所有点以在 window 调整大小...我知道它与 paintComponent() 有关,但不太确定如何去做,任何帮助将不胜感激

这是绘图的部分

public void mouseDragged(MouseEvent evt){
        Point pt = evt.getPoint();
        x = pt.x;
        y = pt.y;
        Graphics g = getGraphics();
        g.setColor(color);
        if(Shape == "Oval"){
            g.drawOval(x, y, 10, 10);
            }
        if(Shape == "Rectangle"){
            g.drawRect(x, y, 10, 10);
            } 
    }

public void paintComponent(Graphics g){
    super.paintComponent(g);

    }

您可以创建一个存储所有点的列表(在您的方法之外)。

List<Point> list = new LinkedList<>() ;
public void mouseDragged(MouseEvent evt){
    Point pt = evt.getPoint();
    list.add(pt) ;