0

我正在尝试使用 GEF 开发拖放的一个奇怪问题。如果我开始对 org.eclipse.gef.ui.parts.TreeViewer 中尚未选择的元素进行拖动操作,则从 EditPartViewer.getSelectedEditPart() 获得的选定元素与通过 SWT Tree 控件获得的元素不同(Tree.getSelection ())。

仅当我开始拖动操作而不在开始操作之前选择树中的元素时才会出现此问题:重现步骤:-在树视图中选择一个元素-开始拖动树中未选择的元素

现在 Tree.getSelection() 方法返回拖动的 TreeItem 但 EditPartViewer.getSelectedEditPart() 仍然返回选定的编辑部分,而不是拖动的。

我该如何纠正这种行为?

4

1 回答 1

0

可能是您选择的编辑部分的拖动跟踪器仅在 mouseUp 事件上应用 viewer.setSelectedEditParts(eps),拖动本身从 mouseDown 事件开始。不完全确定,应该检查默认的 DragTracker 是如何工作的,或者如果你已经覆盖了它,检查它是否正常工作。

于 2011-01-15T14:34:23.203 回答