拖的时候出现了以下的错误?怎么回事?Exception in thread "AWT-EventQueue-0" java.awt.dnd.InvalidDnDOperationException: Drag and drop in progress at sun.awt.dnd.SunDragSourceContextPeer.setDragDropInProgress(SunDragSourceContextPeer.java:298) at java.awt.dnd.DragSource.startDrag(DragSource.java:286) at java.awt.dnd.DragSource.startDrag(DragSource.java:403) at java.awt.dnd.DragGestureEvent.startDrag(DragGestureEvent.java:223) at client.essp.treetotree.TreeDragSource$1.dragGestureRecognized(TreeDragSource.java:65) at java.awt.dnd.DragGestureRecognizer.fireDragGestureRecognized(DragGestureRecognizer.java:339) at sun.awt.windows.WMouseDragGestureRecognizer.mouseDragged(WMouseDragGestureRecognizer.java:202) at java.awt.AWTEventMulticaster.mouseDragged(AWTEventMulticaster.java:262) at java.awt.AWTEventMulticaster.mouseDragged(AWTEventMulticaster.java:261) at java.awt.Component.processMouseMotionEvent(Component.java:5536) at javax.swing.JComponent.processMouseMotionEvent(JComponent.java:3144) at java.awt.Component.processEvent(Component.java:5257) at java.awt.Container.processEvent(Container.java:1966) at java.awt.Component.dispatchEventImpl(Component.java:3955) at java.awt.Container.dispatchEventImpl(Container.java:2024) at java.awt.Component.dispatchEvent(Component.java:3803) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3909) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822) at java.awt.Container.dispatchEventImpl(Container.java:2010) at java.awt.Window.dispatchEventImpl(Window.java:1774) at java.awt.Component.dispatchEvent(Component.java:3803) at java.awt.EventQueue.dispatchEvent(EventQueue.java:463) at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149) at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)程序段: public DragSource create() {
         DragSource dragSource = DragSource.getDefaultDragSource();
        final String draggedValue=null;         dragSource.createDefaultDragGestureRecognizer(
             treeTable.getTreeTable(),
             DnDConstants.ACTION_COPY_OR_MOVE,
             new DragGestureListener() {
             public void dragGestureRecognized(DragGestureEvent event) {
                 DtoTreeNode dto = (DtoTreeNode) treeTable.getTreeTable().getSelectedNode();
                 if( dto == null ){
                     return;
                 }                 String draggedValue=((DtoTree) dto.getDataBean()).getName();                
                 Transferable transferable = new TreeTransferable(dto);
                 event.startDrag(null, transferable, new TreeDragSourceListener(draggedValue));//提示的出错点
             }
         });         return dragSource;
     }

解决方案 »

  1.   

    很久以前解決的,好像主要是在確定哪個是放的對象,哪個是拖源對象。沒確定好,可能會報這個錯誤。 
    我的解決方法是在拖源去掉了//this.getTreeTable().setDragEnabled(true);
    其實也就是說,要弄清楚到底哪個對象是拖源。你可以跟蹤調試,多試一下。
      

  2.   

    也就是把this.getTreeTable().setDragEnabled(true)給去掉了。
      

  3.   

    老大,不对哦,我这没写this.getTreeTable().setDragEnabled(true)
    你加我QQ如何?拜托啦~多谢多谢
    41209041