我最近添加了Drag and Drop到我的SWT TableViewer。这很好用。 我能够将一个元素从源TableViewer拖到目标TableViewer,我可以使用它。
现在出现了我的问题。我只想在另一个元素上拖动一个元素。换句话说,我只希望能够将我的元素放在另一个元素上,不在两行之间。
在图片中你可以看到我的意思。在两行之间拖动时,粗线显示。而且我不希望这种情况发生。它应该只突出显示行,并且不应出现粗线。
目前我正在使用validateDrop(...)
,因此当我在那里发布时,丢弃功能不起作用,但这不是一个干净的解决方案。
我希望你能帮助我。
拖放示例:
答案 0 :(得分:2)
假设您正在使用扩展ViewerDropAdapter
覆盖determineLocation
并始终返回LOCATION_ON
的放置目标侦听器:
@Override
protected int determineLocation(DropTargetEvent event)
{
return LOCATION_ON;
}