无法拖动对象 - 使用dnd gwt查询

时间:2013-01-22 15:19:22

标签: gwt gquery

我创建了标签的跟随网格,我希望它可以拖动:

         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);
    }

但标签不能拖放。我觉得有些失踪,但我无法弄清楚是什么。

1 个答案:

答案 0 :(得分:0)

我想说去NATIVE并使用GWT HTML5拖放支持。您还可以在GWT源代码samples中设置示例项目。

演示 - http://gwt-cloudtasks.appspot.com/

另请参阅 - Drag and Drop in GWT 2.4