⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 personnode.java

📁 鼠标拖拽的例子
💻 JAVA
字号:
import javax.swing.tree.*;

/** This class forces "male" nodes to have leaf icons and
forbids male childbaring ability */
public class PersonNode extends DefaultMutableTreeNode  {

  public PersonNode(PersonalInfo info) {
    super(info);
  }

  /** Override a few methods... */
  public boolean isLeaf() {
    //Note: Male == true;
    return ((PersonalInfo) getUserObject()).isMale();
  }

  public boolean getAllowsChildren() {
    //Note: Male == true;
    return !((PersonalInfo) getUserObject()).isMale();
  }

  public void add(DefaultMutableTreeNode child) {
    super.add(child);
    //System.out.println(child + " added to " + this);

    PersonalInfo childPI = (PersonalInfo) ((PersonNode) child).getUserObject();

    PersonalInfo oldParent = childPI.getParent();
    //if (parent != null) oldParent.remove(childPI);

    PersonalInfo newParent = (PersonalInfo) getUserObject();

    newParent.add(childPI);
  }

  public void remove(DefaultMutableTreeNode child) {
    super.remove(child);
    //System.out.println(child + " removed from " + this);

    PersonalInfo childPI = (PersonalInfo) ((PersonNode) child).getUserObject();

    PersonalInfo ParentPI = (PersonalInfo) getUserObject();
    if (parent != null) ParentPI.remove(childPI);
  }
}

⌨️ 快捷键说明

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