繁体   English   中英

JTree:检查选择的级别

[英]JTree : Check the level of selection

我正在使用MouseAdapter检查JTree节点上的双击。 我希望根据所选节点的级别进行一些不同的操作。 我该如何检查节点的级别? 以下是监听器的代码:

private MouseAdapter getMouseAdapter(JTree jtree) {
        final JTree tree = jtree;
        return new MouseAdapter() {

            @Override
            public void mousePressed(MouseEvent e) {
                TreePath selPath = tree.getPathForLocation(e.getX(), e.getY());
                if (selPath != null) {
                    if (e.getClickCount() == 2) {
                        String selectedNode = selPath.getLastPathComponent().toString();

              // >>>>>  check on which level of the tree this node is        
                    }
                }
            }};
    }

您可以通过首先调用selPathgetPath()方法并计算其长度来检查从selPath到树根的路径长度。

Object[] array = selPath.getPath();
int depth = array.length;
TreePath path = tree.getSelectionPath();
int level = path.getPathCount();

请参见TreePath手册页

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM