簡體   English   中英

JavaFX8 startFullDrag() 無效

[英]JavaFX8 startFullDrag() not effective

我想通過拖放連接兩個圓圈。

Pane p = new Pane();

Circle c1 = new Circle(5);
c1.relocate(10,10);
c1.addEventFilter(MouseEvent.DRAG_DETECTED, e -> {
    c1.startFullDrag();
    System.out.println("started");
});

Circle c2 = new Circle(5);
c2.relocate(40,40);
c2.addEventFilter(DragEvent.ANY, e -> System.out.println("any") );
c2.addEventFilter(DragEvent.DRAG_ENTERED, e -> System.out.println("entered") );

p.getChildren().addAll(c1, c2);

這就是我嘗試過的。
當從左圓c1拖放到右圓c2DRAG_DETECTED事件將起作用。
但不會觸發DragEvent.ANYDragEvent.DRAG_ENTERED

我還嘗試在DRAG_DETECTED使用鼠標事件,但這也沒有任何改變。 我還嘗試使用setOnDragEntered(EventHandler)addEventHandler(EventType, EventHandler)而不是addEventFilter(EventType, EventHandler)但都沒有工作。

為什么c2沒有收到任何DragEvent s?

startFullDrag()將觸發 MouseDragEvents,但不會觸發 DragEvents。

替換addEventFilter(DragEvent.DRAG_ENTERED, ... ); 使用addEventFilter(MouseDragEvent.DRAG_ENTERED, ... );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM