【发布时间】:2017-01-18 23:40:00
【问题描述】:
在拖放过程中,在鼠标图标旁边显示节点的半透明“副本”的最佳方式是什么?
基本上,我有带有彩色背景和文本标签的 HBox,我希望它们在被拖动时“粘”在鼠标光标上。
如果用户可以直观地验证他们正在拖动的内容,而不是仅仅看到鼠标光标变为各种拖动图标,那就太好了。当您拖动某些组件(如 RadioButton)时,Scene Builder 往往会执行此操作。
【问题讨论】:
-
您是否正在执行“平台支持的拖放”(即您在某个节点上调用
startDragAndDrop)?如果是这样,您只需调用Dragboard.setDragView(...)来设置拖动的图像光标。 -
只是内部的,应用程序窗口之外什么都没有。
-
我问的不是这个。
-
我不清楚您所说的“平台支持”是什么意思。我认为这意味着拖入/拖出操作系统平台桌面或文件夹,我没有这样做。在 HBox 节点之一上调用 startDragAndDrop,如下面的答案所示。
-
有three different dragging modes in JavaFX: "simple press-drag-release" (默认), "full press-drag-release" (调用
startFullDrag) 和 "platform supported drag- and-drop”(通过调用startDragAndDrop开始)。下面概述的解决方案仅适用于第三个选项;但是从您的问题中无法知道您正在做什么。