📄 invisiblenode.java
字号:
/* (swing1.1) */package tame.tree;import java.util.Enumeration;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.tree.TreeNode;/**@author Nobuo Tamemasa@version 1.0 01/12/99*/public class InvisibleNode extends DefaultMutableTreeNode { protected boolean isVisible; public InvisibleNode() { this(null); } public InvisibleNode(Object userObject) { this(userObject, true, true); } public InvisibleNode(Object userObject, boolean allowsChildren , boolean isVisible) { super(userObject, allowsChildren); this.isVisible = isVisible; } public TreeNode getChildAt(int index,boolean filterIsActive) { if (! filterIsActive) { return super.getChildAt(index); } if (children == null) { throw new ArrayIndexOutOfBoundsException("node has no children"); } int realIndex = -1; int visibleIndex = -1; Enumeration enum1 = children.elements(); while (enum1.hasMoreElements()) { InvisibleNode node = (InvisibleNode)enum1.nextElement(); if (node.isVisible()) { visibleIndex++; } realIndex++; if (visibleIndex == index) { return (TreeNode)children.elementAt(realIndex); } } throw new ArrayIndexOutOfBoundsException("index unmatched"); //return (TreeNode)children.elementAt(index); } public int getChildCount(boolean filterIsActive) { if (! filterIsActive) { return super.getChildCount(); } if (children == null) { return 0; } int count = 0; Enumeration enum1 = children.elements(); while (enum1.hasMoreElements()) { InvisibleNode node = (InvisibleNode)enum1.nextElement(); if (node.isVisible()) { count++; } } return count; } public void setVisible(boolean visible) { this.isVisible = visible; } public boolean isVisible() { return isVisible; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -