[英]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
拖放到右圓c2
, DRAG_DETECTED
事件將起作用。
但不會觸發DragEvent.ANY
或DragEvent.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.