1

ドラッグ アンド ドロップで画面上の JWindow を移動する方法が必要です。これをマウスとマウスモーションリスナーで整理しましたが、部分的にしか機能しません(ウィンドウを上に移動したい場合は機能しません)。これがコードです。

private boolean drag;
    ...
@Override
public void mouseDragged(MouseEvent e) {
    if(e.getY() < 18){
        p = new Point(e.getXOnScreen(), e.getYOnScreen());
        drag = true;
    }
}

@Override
public void mouseReleased(MouseEvent e) {
    if(drag){
        System.out.println((e.getXOnScreen() + " " + p.x));
        System.out.println((e.getYOnScreen() + " " + p.y));
        this.setLocation(this.getX() + (e.getXOnScreen() - p.x), this.getY() + (e.getYOnScreen() - p.y));
        drag = false;
    }
}
4

0 に答える 0