如何在javafx中实现双击缩放?

How to implement zoom on double Click in javafx?

如何在javafx上实现dbl点击?

我有一个场景(有很多组件),我想让它既可以拖动又可以双击放大。我怎样才能实现这种动态行为? 我已经使用了给定的解决方案,但它们没有帮助 当我拖动两次时,双击事件就会触发。我不想要的。

一些示例代码将不胜感激。

您可以在单击拖动开始之前添加等待时间。

  • 指定是否发生双击的布尔值

  • 拖放时:将布尔值设置为 false

  • 拖/放时:在检查布尔值之前等待指定的毫秒数
  • 拖放时:检查布尔值是否为假 -> 继续

  • 双击:设置布尔值真

这应该有用吗?

编辑:拖/放时:在检查布尔值之前等待指定的毫秒 - 这基本上是您定义为双击的延迟仍然是双击而不是两次单独的点击

Edit2:在这种情况下,Mile 对问题的评论似乎是更好的方法。

尝试双击此代码。

  myPane.setOnMouseClicked(new EventHandler<MouseEvent>() {
        @Override
        public void handle(MouseEvent mouseEvent) {
            if(mouseEvent.getButton().equals(MouseButton.PRIMARY)){
                if(mouseEvent.getClickCount() == 2){
                    //Write zooming logic here.
                }
            }
        }
    });

希望对你有所帮助