Java SWT TableViewer。仅允许Entry作为DropTarget

时间:2016-06-22 18:39:26

标签: java drag-and-drop swt

我最近添加了Drag and Drop到我的SWT TableViewer。这很好用。 我能够将一个元素从源TableViewer拖到目标TableViewer,我可以使用它。

现在出现了我的问题。我只想在另一个元素上拖动一个元素。换句话说,我只希望能够将我的元素放在另一个元素上,不在两行之间

在图片中你可以看到我的意思。在两行之间拖动时,粗线显示。而且我不希望这种情况发生。它应该只突出显示行,并且不应出现粗线。

目前我正在使用validateDrop(...),因此当我在那里发布时,丢弃功能不起作用,但这不是一个干净的解决方案。

我希望你能帮助我。

拖放示例:

Drag and Drop Example

1 个答案:

答案 0 :(得分:2)

假设您正在使用扩展ViewerDropAdapter覆盖determineLocation并始终返回LOCATION_ON的放置目标侦听器:

@Override
protected int determineLocation(DropTargetEvent event)
{
  return LOCATION_ON;
}