拖放后防止JTree扩展

时间:2017-09-03 20:57:47

标签: java swing drag-and-drop jtree expand

拖放节点后,节点的新父节点会展开。我想禁用它。

我扩展了课程TransferHandler并覆盖了方法importData。 在这个方法中,我做了实际的动作。移动节点后,我检查父节点isExpanded是否得到false作为答案。
那么在哪里或如何取消扩展呢?

1 个答案:

答案 0 :(得分:0)

也许你可以使用addTreeWillExpandListener并添加一个这样的监听器:

public class DisableExpansionListener implements TreeWillExpandListener {
    @Override
    public void treeWillExpand(TreeExpansionEvent event) throws ExpandVetoException {
        throw new ExpandVetoException(event, "Disallow all expansions!");
    }

    @Override
    public void treeWillCollapse(TreeExpansionEvent event) throws ExpandVetoException
        // allow collapsing!
    }
}