如何实施dbl点击javafx?
我有一个场景(有很多组件),我想让它既可以拖动也可以双击放大。我怎样才能实现这种动态行为? 我使用了给定的解决方案,但它们没有帮助 当我拖动两次时,双击事件获得触发器。我不想要。
将会感谢一些示例代码。
答案 0 :(得分:0)
您可以在启动单击拖动之前添加等待时间。
布尔值,指定是否发生双击
在拖放时:将布尔值设置为false
在拖放时:检查布尔值是否为false - >继续
双击:set boolean true
这应该有用吗?
编辑:在拖放时:在检查布尔值之前等待指定的毫秒数 - 这基本上是您定义为双击仍然是双击而不是两次单击的延迟
Edit2:在这种情况下,Mile对这个问题的评论似乎是一个更好的方法。
答案 1 :(得分:0)
尝试使用此代码进行双击。
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.
}
}
}
});
我希望它会对你有所帮助。