这基本上是@Andrew的评论的概述-由于您的SSCCE,很容易实现:-)
子类TransferHandler,重写canimport以检查源标签是否在imageSelect面板上,如果不是,则拒绝。
// custom transferHandler which decides about imports based on source TransferHandler handler = new TransferHandler("icon") { @Override public boolean canimport(TransferSupport support) { return super.canimport(support) && support.getComponent().getParent() != imageSelectPanel; } }; // use the handler on all labels (handlers can be shared, btw) // for each label on imageSelectPanel imageSelectLabel.setTransferHandler(handler) // for each label on the target panel (aka storyPanel) storyLabel.setTransferHandler(handler)


