JTree操作API归纳
1.1 创建树组件
1.1.1 最简方式:
JTree tree
=
new
JTree();
在显示时,树组件会带上JTree默认的节点。
1.1.2 指定树的节点后创建树:
DefaultMutableTreeNode root
=
new
DefaultMutableTreeNode(
"
根节点
"
);
root.add( new DefaultMutableTreeNode( " 子节点 " ));
JTree tree = new JTree(root);
root.add( new DefaultMutableTreeNode( " 子节点 " ));
JTree tree = new JTree(root);
1.1.3 将树加入到面板中
以下是将树加上滚动窗格后加入一个面板的示例程序。
JPanel panel
=
new
JPanel();
panel.setLayout( new GridLayout( 1 , 1 ));
panel.add( new JScrollPane(tree));
panel.setLayout( new GridLayout( 1 , 1 ));
panel.add( new JScrollPane(tree));
1.2 树节点相关
1.2.1 取得树的根节点
DefaultTreeModel model
=
(DefaultTreeModel) tree.getModel();
DefaultMutableTreeNode root = (DefaultMutableTreeNode)model.getRoot();
DefaultMutableTreeNode root = (DefaultMutableTreeNode)model.getRoot();
1.2.2 更新树的根节点
DefaultMutableTreeNode newRoot
=
;
DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
model.setRoot(newRoot);
model.reload();
tree.updateUI();
DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
model.setRoot(newRoot);
model.reload();
tree.updateUI();
1.2.3 从一个节点开始递归遍历其下的所有节点
private
String getNodeText(DefaultMutableTreeNode node){
Category category = (Category)node.getUserObject();
StringBuilder sb =
Category category = (Category)node.getUserObject();
StringBuilder sb =