我正在尝试将自定义Node
(实际上是Shape
,称为Box
)从一个Pane
拖到另一个。当我开始拖动初始Pane
(可以从中拖动Box
)时,我将dragView
设置为Box
的快照。但是我的第二个Pane
由多个Box
组成,它们不会相互碰撞。因此,每当检测到单位冲突时,我都希望更改WriteableImage
中的dragView
(指示无法将其放置在此处)。
根据说明文件:
公共无效setDragView(图像图像)
设置以拖放手势传输的数据的可视表示形式。仅当在DRAG_DETECTED处理程序中开始拖放操作时,才应调用此方法,否则在其他时间调用该方法无效。
那么有没有选择可以实现我想要的?我至少还能做些什么来模拟它?
这是我的MouseListener
:
boxStackPane
是第一个Pane
,是Box
的起源。
mapPane
是目标Pane
,需要检查单元冲突。如何更改在setOnDragDetected
的{{1}}事件中设置的图像?
boxStackPane