以下是从这里使用拖放库的时候:
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 然后拖动功能工作。我在这里错过了什么吗?
答案 0 :(得分:2)
问题根本不在我的代码中,调用RootPanel.get()有一个记录的问题.clear();这导致该库基本上不起作用。这个问题可以解决这个问题:
http://code.google.com/p/gwt-dnd/issues/detail?id=55
但要找到它并不容易。希望如果有的话,这将在未来版本中打补丁。