我希望你有3个问题可以帮助我!
1)[求助] 我有一个场景,其中包含一些 ImageView 和 .setOnMouseMoved()绑定到父节点,可以扩展它们的尺寸基于光标位置;
问题是,如果我按下鼠标按钮并按住它,然后我在场景周围移动光标, .setOnMouseMoved()事件将被忽略,我的 ImageView s不会缩放:
即使在这种情况下,还有办法让 .setOnMouseMoved()保持正常工作吗?
2)我的ImageViews也有一个 .setOnMouseClicked()事件,但是如果我按下它们并按住它,将光标移出场景,再次在 ImageView 之上并重新发布它,事件执行相同;
如果鼠标离开场景,我不会执行该事件,我该怎么办?
3)如果我按下并按住舞台栏(包含应用程序名称的栏,最小化按钮和退出按钮)而不移动光标,所有我的场景中的动画冻结了大约1秒钟,然后一切都恢复正常:为什么?
谢谢!
答案 0 :(得分:1)
1)尝试改为使用.setOnMouseDragged。
2).setOnMouseClicked在单击鼠标后立即注册。这意味着即使您拖出窗口,它仍会注册。如果您不想在窗外拖动时注册,请使用.setOnMouseReleased。
3)您是否使用java.util.Timer进行动画制作?如果是,请查看this。