zoukankan      html  css  js  c++  java
  • java实现树型结构样式

     1 import javax.swing.*;
     2 import javax.swing.event.*;
     3 import javax.swing.tree.*;
     4 
     5 public class Root extends JFrame
     6 {
     7     //创建节点数组
     8     DefaultMutableTreeNode[] dmtn={
     9             new DefaultMutableTreeNode(new NodeValue("图书馆管理系统")),
    10             new DefaultMutableTreeNode(new NodeValue("学生用户管理")),
    11             new DefaultMutableTreeNode(new NodeValue("图书管理")),
    12             new DefaultMutableTreeNode(new NodeValue("查询图书")),
    13             new DefaultMutableTreeNode(new NodeValue("借阅预约图书")),
    14             new DefaultMutableTreeNode(new NodeValue("归还挂失图书")),
    15             new DefaultMutableTreeNode(new NodeValue("交纳罚款")),
    16             new DefaultMutableTreeNode(new NodeValue("管理员管理")),
    17             new DefaultMutableTreeNode(new NodeValue("退出"))
    18     };
    19     //创建树模型,指定根节点为“学生管理系统”
    20     DefaultTreeModel dtm = new DefaultTreeModel(dmtn[0]);
    21     JTree jt = new JTree(dtm);//创建包含dtm树模型的JTree对象    
    22     JScrollPane jsp=new JScrollPane(jt);//为JTree创建滚动窗体
    23 
    24   private JSplitPane jsplr=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true);//创建分割窗体对象  
    25     private JPanel jp=new JPanel();//创建JPanel对象   
    26 
    27   public Root() {
    28         this.addTreeListener();//为树节点注册事件监听器
    29         for (int i=1;i<9;i++)
    30         {//向根节点添加子节点   
    31             dtm.insertNodeInto(dmtn[i],dmtn[0],i-1);
    32         }
    33         jt.setEditable(false);//设置该树中节点是可编辑的        
    34         this.add(jsplr);//将包含树的滚动窗口添加进窗体        
    35         jsplr.setLeftComponent(jt);//将包含树的滚动窗口添加进左边的子窗口        
    36         jp.setBounds(200,50,600,500);//为jp设置大小位置并添加进右边的子窗口
    37         jsplr.setRightComponent(jp);        
    38         jsplr.setDividerLocation(200);//设置分隔条的初始位置        
    39         jsplr.setDividerSize(4);//设置分隔条的宽度
    40         //设置窗体的关闭动作,标题,大小,位置及可见性
    41         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   
    42         //设置窗体首次出现的大小和位置--自动居中
    43         Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    44         int centerX = screenSize.width/2;
    45         int centerY = screenSize.height/2;
    46         int w=600;//本窗体宽度
    47         int h=400;//本窗体高度
    48         this.setBounds(centerX-w/2,centerY-h/2-10,w,h);//设置窗体出现在屏幕中央
    49         
    50 //       this.setExtendedState(JFrame.MAXIMIZED_BOTH);//窗体全屏
    51         
    52         this.setVisible(true);//设置窗体可见
    53         jt.setShowsRootHandles(true);//设置显示根节点的控制图标
    54     }
    55 
    56   public static void main(String[] args) {
    57           // TODO Auto-generated method stub
    58           new Root();
    59     }
    60 
    61  
  • 相关阅读:
    Comet OJ 夏季欢乐赛 篮球校赛
    USACO Tractor
    Comet OJ 夏季欢乐赛 Gree的心房
    USACO Hide and Seek
    Comet OJ 夏季欢乐赛 分配学号
    php如何上传txt文件,并且读取txt文件
    插入多行数据的时候,一个insert插入多行
    连接优化查询,按条件查询的时候,如何优化查询的时间
    如何将txt的多行记录直接导入到mysql数据库
    如何在自己的网页上插入一个超链接,发起临时qq会话
  • 原文地址:https://www.cnblogs.com/0519xf/p/4702276.html
Copyright © 2011-2022 走看看