我想将 a 的“丢弃”事件委托JList
给它的父级 ( JPanel
) 并删除在 JList 上丢弃的视觉反馈。
这样做的正确方法是什么?
我正在尝试创建一个DropTarget
对象并在 JPanel 和 JList 之间共享它,但这似乎有点 hackish --- 我不知道DropTarget.getComponent()
应该做什么,并担心它可能会破坏东西。
您能否建议正确的方法(在 Java 6 中)?
编辑: *我为什么要这样做?*
我试图让用户将项目分组(一个 JPanel + 一个 JList = 一个组)-当项目被丢弃时,列表顺序将不会被保留(并且由于某些内部数据结构而无法保留)JList
. _
默认的视觉反馈JList
是一个类似行的光标提示它将被添加到哪里。如果我使用默认值,当用户发现项目被添加到列表末尾时,用户会感到困惑,而不是光标显示的位置。
为了使视觉反馈看起来更容易,我在 JPanel 级别上进行操作(一个 JPanel 对应一个 JList,列表上的一些半透明叠加层等等)。自然,拖放到该 JPanel 也应该添加到列表中。所以....