1 32 33 package it.businesslogic.ireport.gui; 34 import javax.swing.*; 35 import java.util.*; 36 import java.awt.dnd.*; 37 import java.awt.event.*; 38 import javax.swing.table.*; 39 43 public class JTableFrame extends javax.swing.JInternalFrame { 44 45 46 java.awt.Point origin = null; 47 public JTableFrame() { 48 initComponents(); 49 ((javax.swing.plaf.basic.BasicInternalFrameUI )getUI()).getNorthPane().setPreferredSize( new java.awt.Dimension (0,15) ); 50 51 52 this.jList1.setModel(new DefaultListModel()); 53 ((DefaultListModel)this.jList1.getModel()).addElement("Field1"); 54 ((DefaultListModel)this.jList1.getModel()).addElement("Field2"); 55 ((DefaultListModel)this.jList1.getModel()).addElement("Field3"); 56 ((DefaultListModel)this.jList1.getModel()).addElement("Field4"); 57 ((DefaultListModel)this.jList1.getModel()).addElement("Field5"); 58 ((DefaultListModel)this.jList1.getModel()).addElement("Field6"); 59 ((DefaultListModel)this.jList1.getModel()).addElement("Field7"); 60 ((DefaultListModel)this.jList1.getModel()).addElement("Field8"); 61 ((DefaultListModel)this.jList1.getModel()).addElement("Field9"); 62 ((DefaultListModel)this.jList1.getModel()).addElement("Field10"); 63 this.dragSource = DragSource.getDefaultDragSource(); 64 this.dgListener = new java.awt.dnd.DragGestureListener (){ 65 public void dragGestureRecognized(DragGestureEvent dge) 66 { 67 jList1dragGestureRecognized(dge); 68 } 69 }; 70 this.dsListener = new DSListener(); 71 80 81 this.dragSource.createDefaultDragGestureRecognizer( 82 this, DnDConstants.ACTION_COPY_OR_MOVE, this.dgListener ); 83 84 jList1.setDragEnabled(true); 85 jList1.setTransferHandler(new it.businesslogic.ireport.gui.dnd.ListColumnTransferableHandler()); 86 } 87 88 private DragSource dragSource; 89 private DragGestureListener dgListener; 90 private DragSourceListener dsListener; 91 92 public void jList1dragGestureRecognized(DragGestureEvent dge) 93 { 94 95 } 96 97 102 private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane (); 104 jList1 = new javax.swing.JList (); 105 106 setBackground(new java.awt.Color (255, 255, 255)); 107 setResizable(true); 108 setTitle("My Table"); 109 setFrameIcon(null); 110 addMouseMotionListener(new java.awt.event.MouseMotionAdapter () { 111 public void mouseDragged(java.awt.event.MouseEvent evt) { 112 formMouseDragged(evt); 113 } 114 }); 115 116 jList1.setDragEnabled(true); 117 jList1.addMouseMotionListener(new java.awt.event.MouseMotionAdapter () { 118 public void mouseDragged(java.awt.event.MouseEvent evt) { 119 jList1MouseDragged(evt); 120 } 121 }); 122 123 jScrollPane1.setViewportView(jList1); 124 125 getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER); 126 127 pack(); 128 } 130 private void jList1MouseDragged(java.awt.event.MouseEvent evt) { JComponent c = (JComponent)evt.getSource(); 132 TransferHandler handler = c.getTransferHandler(); 133 handler.exportAsDrag(c, evt, TransferHandler.COPY); 134 } 136 private void formMouseDragged(java.awt.event.MouseEvent evt) { 138 } 140 141 private javax.swing.JScrollPane jScrollPane1; 143 private javax.swing.JList jList1; 144 146 147 class DSListener implements DragSourceListener { 148 149 152 public void dragDropEnd(DragSourceDropEvent e) { 153 if( e.getDropSuccess() == false ) { 154 System.out.println( "not successful"); 155 return; 156 } 157 158 162 164 } 168 169 172 public void dragEnter(DragSourceDragEvent e) { 173 DragSourceContext context = e.getDragSourceContext(); 175 int myaction = e.getDropAction(); 177 context.setCursor(DragSource.DefaultCopyDrop); 179 } 183 186 public void dragOver(DragSourceDragEvent e) { 187 DragSourceContext context = e.getDragSourceContext(); 188 int sa = context.getSourceActions(); 189 int ua = e.getUserAction(); 190 int da = e.getDropAction(); 191 int ta = e.getTargetActions(); 192 } 197 200 public void dragExit(DragSourceEvent e) { 201 DragSourceContext context = e.getDragSourceContext(); 203 } 204 205 210 public void dropActionChanged (DragSourceDragEvent e) { 211 DragSourceContext context = e.getDragSourceContext(); 212 context.setCursor(DragSource.DefaultCopyNoDrop); 213 } 214 } 215 } 216 217 | Popular Tags |