import java.awt.event.MouseEvent;
import java.awt.Point;
import java.awt.event.MouseMotionAdapter;
import java.awt.Toolkit;
import java.awt.Dimension;public class Frame1 extends JFrame {
    private Point pressedPt;
    public Frame1() {
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setTitle("Frame Title");
        this.setSize(400, 300);
        this.setUndecorated(true);
        this.addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent e) {
                pressedPt = e.getPoint();
            }
        });
        this.addMouseMotionListener(new MouseMotionAdapter() {
            public void mouseDragged(MouseEvent e) {
                JFrame frame = (JFrame) e.getSource();
                Point location = frame.getLocation();
                int x = e.getX() - pressedPt.x + location.x;
                int y = e.getY() - pressedPt.y + location.y;
                frame.setLocation(x, y);
            }
        });
                Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension frameSize = this.getSize();
        this.setLocation( (screenSize.width - frameSize.width) / 2,
                          (screenSize.height - frameSize.height) / 2);
    }
}