我一直在尝试使用以下鼠标侦听器在屏幕上移动未装饰的舞台:
- 按下
- 已发布
- 拖拽
这些事件来自一个矩形。我的想法是移动未装饰的窗口,单击矩形并拖动所有窗口。
@FXML 受保护的无效onRectanglePressed(鼠标事件事件){ X = primaryStage.getX() - event.getScreenX(); Y = primaryStage.getY() - event.getScreenY(); } @FXML 受保护的无效 onRectangleReleased(MouseEvent 事件) { primaryStage.setX(event.getScreenX()); primaryStage.setY(event.getScreenY()); } @FXML 受保护的无效 onRectangleDragged(MouseEvent 事件){ primaryStage.setX(event.getScreenX() + X); primaryStage.setY(event.getScreenY() + Y); }
我对这些事件所做的只是当我按下矩形并开始拖动窗口时,它会移动一点。但是,当我释放按钮时,窗口会移动到矩形所在的位置。
提前致谢。