stringtransferhandler.java

来自「Java样例程序集合:2D」· Java 代码 · 共 50 行

JAVA
50
字号
/* * StringTransferHandler.java is used by the 1.4 * ExtendedDnDDemo.java example. */import java.awt.datatransfer.*;import javax.swing.*;import java.io.IOException;public abstract class StringTransferHandler extends TransferHandler {        protected abstract String exportString(JComponent c);    protected abstract void importString(JComponent c, String str);    protected abstract void cleanup(JComponent c, boolean remove);        protected Transferable createTransferable(JComponent c) {        return new StringSelection(exportString(c));    }        public int getSourceActions(JComponent c) {        return COPY_OR_MOVE;    }        public boolean importData(JComponent c, Transferable t) {        if (canImport(c, t.getTransferDataFlavors())) {            try {                String str = (String)t.getTransferData(DataFlavor.stringFlavor);                importString(c, str);                return true;            } catch (UnsupportedFlavorException ufe) {            } catch (IOException ioe) {            }        }        return false;    }        protected void exportDone(JComponent c, Transferable data, int action) {        cleanup(c, action == MOVE);    }        public boolean canImport(JComponent c, DataFlavor[] flavors) {        for (int i = 0; i < flavors.length; i++) {            if (DataFlavor.stringFlavor.equals(flavors[i])) {                return true;            }        }        return false;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?