JavaFX:setOnDragDropped上的ImageView没有触发

时间:2016-04-01 20:32:24

标签: java javafx triggers drag-and-drop

我正在使用SceneBuilder开发JavaFX应用程序。我有ImageView对象,并且setOnDragDropped没有触发。我没有收到任何错误。对于onDragDetected,一切正常。我试过这两个选项:1)从SceneBuilder设置它(参见截图) enter image description here

第二种方式来自控制器代码:

@FXML public void sensorDrop(DragEvent  event) {
    System.out.println("Drooooop!>>");
    event.consume();
    //TODO More useful code
 }

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

当你将某些东西放到注册它的节点上时,会调用onDragDropped处理程序,而不是当你将某个节点放在某个节点上时。因此,您需要在堆栈窗格中注册onDragDropped处理程序。

答案 1 :(得分:1)

要使其完整 - 为了注册它,必须注册setOnDragOver

label.setOnDragOver(new EventHandler <DragEvent>() {

    public void handle(DragEvent event) {
        event.acceptTransferModes(TransferMode.ANY);
        event.consume();
    }
});

我从以下答案中得到了答案: JavaFX OnDragDropped Not Registering