jtreetransferhandler.java

来自「JRemoteControl is a simple Java&#8482 dr」· Java 代码 · 共 72 行

JAVA
72
字号
/* * JRemCntl - Copyright (C) 2007 Filippo Di Vattimo <fildiv@gmail.com> * See COPYING */package fildiv.jremcntl.server.gui.util.swing;import java.awt.datatransfer.Transferable;import javax.swing.JComponent;import javax.swing.JTree;import javax.swing.TransferHandler;import javax.swing.tree.TreePath;public class JTreeTransferHandler extends TransferHandler {	/**	 * 	 */	private static final long serialVersionUID = 1L;		private Object draggedNode = null;	protected Transferable createTransferable(JComponent c) {		Transferable t = null;		if (c instanceof JTree) {			JTree jTree = (JTree) c;			t = new GenericTransferable(jTree.getSelectionPaths());			draggedNode = null;			TreePath dragPath = jTree.getSelectionPath();			if (dragPath != null)				draggedNode = dragPath.getLastPathComponent();		}		return t;	}	public int getSourceActions(JComponent c) {		return TransferHandler.MOVE;	}	protected void exportDone(JComponent source, Transferable data, int action) {		if (!(source instanceof JTree))			return;		JTree tree = (JTree) source;		TreePath currentPath = tree.getSelectionPath();		if (currentPath != null) {			Object targetNode = currentPath.getLastPathComponent();			exportDone(tree, draggedNode, targetNode);		}			  	super.exportDone(source, data, action);	}	public Object getDraggedNode() {		return draggedNode;	}		protected void exportDone(JTree tree, Object draggedNode, Object targetNode) {			}}

⌨️ 快捷键说明

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