3

我们正在使用 GWT,我们需要创建两个拖放树网格。每棵树都包含父母和孩子(目前最多两级)。这是我们需要能够做的事情:

用例

  • 将父级从一个树网格拖到另一个。
  • 将父 1 拖到父 2(1 将成为 2 的子,并且 1 的所有子都将成为 2 的子)-> 请不要问:D
  • 将孩子从一个父母拖到另一个父母(在同一个树网格内)
  • 将子级拖动到同一树网格内的顶层(子级将成为父级)
  • 使用两个选项将孩子拖到另一个树网格
    1 - 顶级 - 树 1 的孩子将成为树 2 上的父母。
    2 - 父母 - 树 1 的孩子将成为树网格 2 上父母的孩子。

如果这没有多大意义,我们还没有完整的上下文,所以这就是我们所知道的。

问题

我们可以在同一个树网格上拖动。如果我们想要拖动单元格的行是隐藏的,我们将滚动设置为 true,这样当用户在其中拖动时网格会滚动。像这样:

private void setDraggableOptions(DragAndDropColumn<?, ?> column) {
    // retrieve draggableOptions on the column
    DraggableOptions draggableOptions = column.getDraggableOptions();
    draggableOptions.setScroll(true);
    // use template to construct the helper. The content of the div will be set
    // after
    draggableOptions.setHelper(HelperType.CLONE);
    // opacity of the helper
    draggableOptions.setOpacity((float) 0.8);
    // cursor to use during the drag operation
    draggableOptions.setCursor(Cursor.MOVE);
    // set the revert option
    draggableOptions.setRevert(RevertOption.ON_INVALID_DROP);
    // prevents dragging when user click on the category drop-down list
    draggableOptions.setCancel("select");
    column.setDraggableOptions(draggableOptions);
}

现在的问题是,将树网格设置为滚动,用户将永远无法将对象拖到第二棵树,因为滚动会尝试将对象始终保持在网格内。

我们正在使用gwtquery-plugins

有什么想法可以解决这个问题吗?非常感谢您提前。

4

1 回答 1

2

在此处查看我对您的问题的回答

于 2012-10-02T21:33:50.687 回答