zoukankan      html  css  js  c++  java
  • Java编程——森林状的关系图

     1 import java.awt.*;
     2 import javax.swing.*;
     3 import javax.swing.tree.*;
     4 import javax.swing.event.*;
     5 
     6 //森林状的关系图
     7 
     8 public class JTreeDemo extends JFrame{
     9     JTextField jtfInfo; //文本域,用于显示点击的节点名称
    10     
    11     public JTreeDemo(){
    12         super("森林状的关系图");  //调用父类构造函数
    13         
    14         DefaultMutableTreeNode root = new DefaultMutableTreeNode("设置"); //生成根节点
    15         DefaultMutableTreeNode node1=new DefaultMutableTreeNode("常规"); //生成节点一
    16         node1.add(new DefaultMutableTreeNode("默认路径")); //增加新节点到节点一上
    17         node1.add(new DefaultMutableTreeNode("保存选项"));
    18         root.add(node1);  //增加节点一到根节点上
    19         root.add(new DefaultMutableTreeNode("界面"));    
    20         root.add(new DefaultMutableTreeNode("提示声音"));  
    21         root.add(new DefaultMutableTreeNode("打印"));    
    22         
    23         JTree tree = new JTree(root);  //得到JTree的实例            
    24            DefaultTreeCellRenderer renderer = (DefaultTreeCellRenderer)tree.getCellRenderer(); //得到JTree的Renderer
    25         renderer.setLeafIcon(null); //设置叶子节点图标为空
    26         renderer.setClosedIcon(null);  //设置关闭节点的图标为空
    27         renderer.setOpenIcon(null); //设置打开节点的图标为空
    28         
    29         tree.addTreeSelectionListener(new TreeSelectionListener() {  //选择节点的事件处理
    30         public void valueChanged(TreeSelectionEvent evt) {
    31             TreePath path = evt.getPath();  //得到选择路径
    32             String info=path.getLastPathComponent().toString(); //得到选择的节点名称
    33             jtfInfo.setText(info);  //在文本域中显示名称
    34         }
    35            });
    36 
    37 
    38         JScrollPane jsp=new JScrollPane(tree); //增加JTree到滚动窗格
    39         jtfInfo=new JTextField(); //实例化文本域
    40         jtfInfo.setEditable(false); //文本域不可编辑
    41         getContentPane().add(jsp,BorderLayout.CENTER);  //增加组件到容器上
    42         getContentPane().add(jtfInfo,BorderLayout.SOUTH);
    43         
    44                 
    45         setSize(250,200);  //设置窗口尺寸
    46         setVisible(true);  //设置窗口可视
    47         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
    48     }
    49     
    50     public static void main(String[] args){
    51         new JTreeDemo();
    52     }
    53 }

  • 相关阅读:
    十大排序
    算法11----判断是否为回文词(双端队列判断)
    算法10-----分糖果
    算法9-----输出全排列(递归)---移除K个数,剩下最小数。
    算法8-----罗马字转整数(分治法)
    Python数据结构2-----队列和堆
    Python数据结构1-----基本数据结构和collections系列
    Python笔记22-----高阶函数
    10、TV UI
    9、创建向后兼容的用
  • 原文地址:https://www.cnblogs.com/liao-pxsoftware15/p/7835337.html
Copyright © 2011-2022 走看看