在java设置树节点和默认扩展节点的方法

这个java小程序专注于定制树的节点,如不显示根节点,定义节点的高度,设置字体,显示连接,节点是否使用默认图标,以及如何扩展节点。



进口java AWT *;

导入java。利用*;

进口javax.摆动。*;

进口javax.摆动。树。*;



公共课tree_04扩展JFrame {

私人JTree树; / /定义私有变量。

/ main方法。

public static void main(String { } args){

tree_04框架=新(tree_04); / /类的实例化。

frame.setvisible(true); / /窗口显示。

}

构建方法。

公共tree_04(){

(超级);继承自父类。

settitle(自定义树); / /设置标题的窗口。

窗口(100100280350); / /初始位置设置窗口。

setdefaultcloseoperation(JFrame。exit_on_close); / /设置窗口关闭。

特定操作。

defaultmutabletreenode根; / /定义树的根节点。

根=新defaultmutabletreenode(人事管理系统); / /设置根节点。

defaultmutabletreenode notefa; / /定义第一个根节点。

notefa =新defaultmutabletreenode(人事管理);

NoteFA.add(New DefaultMutableTreeNode(账户管理));

NoteFA.add(New DefaultMutableTreeNode(考勤管理));

NoteFA.add(New DefaultMutableTreeNode(奖惩));

NoteFA.add(New DefaultMutableTreeNode(培训管理));

Root.add(notefa); / /添加notefa根的根节点。

defaultmutabletreenode notefb; / /定义第一个根节点。

notefb =新defaultmutabletreenode(治疗);

NoteFB.add(New DefaultMutableTreeNode(账户管理));

NoteFB.add(New DefaultMutableTreeNode(人员设置));

NoteFB.add(New DefaultMutableTreeNode(处理声明));

Root.add(notefb); / /添加notefa根的根节点。

defaultmutabletreenode notefc; / /定义第一个根节点。

notefc =新defaultmutabletreenode(系统维护);

NoteFC.add(New DefaultMutableTreeNode(企业架构));

NoteFC.add(New DefaultMutableTreeNode(基本信息));

NoteFC.add(New DefaultMutableTreeNode(系统初始化));

Root.add(notefc); / /添加notefa根的根节点。



根节点根目录树。

树=新的JTree(根);

tree.setrootvisible(假); / /设置不显示根节点。

Tree.setRowHeight(30); / /树线。

tree.setfont(新字体(宋体

tree.putclientproperty(JTree线型。



获取节点映射对象。

defaulttreecellrenderer treecellrenderer; / /定义渲染对象变量。

treecellrenderer =(defaulttreecellrenderer)tree.getcellrenderer(树); / /树映射对象。

TreeCellRenderer.setLeafIcon(空); / /套叶节点没有使用图标。

TreeCellRenderer.setClosedIcon(空); / /套。图标未折叠。

TreeCellRenderer.setOpenIcon(空); / /集扩张。不使用图标



据 / /先序遍历树的结点。

枚举枚举;定义节点枚举对象。

(计数=根。preorderenumeration); / /根据树的前序遍历。

而(enumeration.hasmoreelements()){

defaultmutabletreenode节点; / /定义节点变量。

节点=(defaultmutabletreenode)(枚举。nextelement); / /下一个节点被分配给节点。

如果(!Node.isLeaf()){

确定节点的路径。

树路径路径=新树路径(node.getpath()); / /定义路径变量。

Tree.expandPath(路径); / /路径。

}

}



窗口中的树。

GetContentPane(),添加(树、BorderLayout。中心);

}

}



运行结果: