本质上和javafx没有什么不同,
网上看到的方案都是通过设置primaryStage的位置来实现,所以在多窗口情形下不论拖动哪个窗口都只会使主窗体移动。解决方案就是通过currentWindow来操作当前窗体,下面贴出我的代码:
首先我们创建一个事件处理器来响应鼠标事件:
class DragWindowEventHandler(private val currentWindow: Window) : EventHandler<MouseEvent> {
//鼠标按下时窗口的位置
private var oldStageX = 0.0
private var oldStageY = 0.0
//鼠标按下时鼠标的位置
private var oldMouseX = 0.0
private var oldMouseY = 0.0
override fun handle