0

以下是使用此处的拖放库时:

http://code.google.com/p/gwt-dnd/

将绝对面板放置在相对面板中时,似乎禁用了拖动功能。一个简单的例子:

    private AbsolutePanel leftPanelTree = new AbsolutePanel();
    private HorizontalPanel drawingAppPanel = new HorizontalPanel();
    private VerticalPanel leftPanel = new VerticalPanel();
    private VerticalPanel rightPanel = new VerticalPanel();
    private Label rightSideFiller = new Label("Right Side");
    private Label leftSideFiller = new Label("Left Side");
    private Image newImage = new Image("images/link.gif");
    private PickupDragController newDragController = 
        new PickupDragController(leftPanelTree, true);

        public DrawingApplication() {
                initWidget(drawingAppPanel);

                newDragController.makeDraggable(newImage);
                leftPanelTree.setWidth("300px");
                leftPanelTree.setHeight("200px");
                leftPanelTree.addStyleName("panelBorderTest");
                leftPanelTree.add(newImage, 1, 1);

                drawingAppPanel.setWidth("100%");
                drawingAppPanel.setHeight("100%");
                drawingAppPanel.setBorderWidth(2);

                drawingAppPanel.add(leftPanel);
                drawingAppPanel.add(rightPanel);

                leftPanel.setBorderWidth(2);
                leftPanel.setHeight("100%");
                leftPanel.setWidth("100%");
                leftPanel.add(leftSideFiller);
                //leftPanel.add(leftPanelTree);

                rightPanel.add(rightSideFiller);
        }

但是,如果我将图像添加到 RootPanel(并相应地更改边界面板)或将绝对面板直接添加到 RootPanel,则拖动功能起作用。我在这里错过了什么吗?

4

1 回答 1

2

毕竟问题不在我的代码中,调用 RootPanel.get().clear(); 这导致该库基本上无法运行。在此问题下有一个可用的修复程序:

http://code.google.com/p/gwt-dnd/issues/detail?id=55

但它并不容易找到。希望这将在未来的版本中修补,如果有的话。

于 2009-03-10T18:40:02.897 回答