我创建了标签的跟随网格,我希望它可以拖动:
public static Grid setLabels (String [] str){
Label [] lbl = new Label [str.length];
Grid grid = new Grid(5,1);
CellFormatter cellFormatter = grid.getCellFormatter();
for(int i=0; i<str.length; i++){
lbl[i] = new Label();
lbl[i].setText(str[i]);
DraggableWidget<Label> draggableLabel = new DraggableWidget<Label>(lbl[i]);
draggableLabel.setRevert(RevertOption.ON_INVALID_DROP);
draggableLabel.setDraggingZIndex(100);
draggableLabel.setDraggingCursor(Cursor.MOVE);
grid.setWidget(i, 0, draggableLabel);
cellFormatter.setHeight(i, 0, "50px");
}
return grid;
}
然后在面板上添加网格。一切都显示好。 然后我创建一个可丢弃的小部件。
public static void createDND(){
final Label moveHere = new Label("Move here!");
DroppableWidget<Label> dnd1 = new DroppableWidget<Label>(moveHere);
dnd1.addDropHandler(new DropEventHandler() {
public void onDrop(DropEvent event) {
Widget droppedLabel= event.getDraggableWidget();
moveHere.setText("");
}
});
dndPanel1.add(dnd1);
}
但标签不能拖放。我觉得有些失踪,但我无法弄清楚是什么。
答案 0 :(得分:0)
我想说去NATIVE并使用GWT HTML5拖放支持。您还可以在GWT源代码samples中设置示例项目。
演示 - http://gwt-cloudtasks.appspot.com/
另请参阅 - Drag and Drop in GWT 2.4