JavaFX窗口拖动
Posted 温柔一刀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaFX窗口拖动相关的知识,希望对你有一定的参考价值。
问题场景:
在上一篇中,我们将窗口的默认标题栏隐藏从而导致鼠标点击窗体无法进行拖动。
思路:
给组件添加鼠标按下事件监听器和鼠标拖动事件监听器。
实现:
代码片段:
private double xOffset = 0;
private double yOffset = 0;
代码片段:
root.setOnMousePressed((MouseEvent event) -> {
event.consume();
xOffset = event.getSceneX();
yOffset = event.getSceneY();
});
root.setOnMouseDragged((MouseEvent event) -> {
event.consume();
stage.setX(event.getScreenX() - xOffset);
//根据自己的需求,做不同的判断
if (event.getScreenY() - yOffset < 0) {
stage.setY(0);
} else {
stage.setY(event.getScreenY() - yOffset);
}
});
以上是关于JavaFX窗口拖动的主要内容,如果未能解决你的问题,请参考以下文章