import java.awt.datatransfer.*; static void tableEnableTextDrag(final JTable table) { TransferHandler th = new TransferHandler { @Override public int getSourceActions(JComponent c) { ret COPY; } @Override protected Transferable createTransferable(JComponent c) { //print("Row/Column: " + table.getSelectedRow() + " / " + table.getSelectedColumn()); O o = selectedTableCell(table); //print("Value: " + o); return new StringSelection(str(o)); } }; tableEnableDrag(table, th); }