как перетащить объект

Я хочу, чтобы перетащить поле, и я хочу, чтобы мой курсор мыши был там, где я щелкнул в прямоугольнике, в то время как я перетаскиваю прямоугольник. Я попробовал этот код, и я получил кучу ошибок, когда я пытался перетащить.

import objectdraw.*;

import java.awt.*;

public class TouchWindow extends WindowController
{

    private FilledRect a;
    private boolean b;
    private Location c;
    private int x;
    private int y;
    public void begin()
    {
        b=false;
        a=new FilledRect(0,0,50,50,canvas);
    }
    public void onMouseClick(Location pt)
    {
        if(a.contains(pt))
        {
        b=true;
        pt=c;
        }
    }
    public void onMouseDrag(Location pt2)
    {
        if(b==true)
        {
        x=(int)c.getX()-(int)pt2.getX();
        y=(int)c.getY()-(int)pt2.getY();
        a.move(x,y);
        }
    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос