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  
  • 相关阅读:
    从零构建自己的远控•界面搭建(2)
    从零构建自己的远控•项目简介(1)
    特训99小游戏
    WritePrivateProfileSection 示例
    dll劫持
    c/c++创建动态库
    不传请求号修改测试系统或者正式系统代码
    ABAP 业务处理中的弹窗提示
    SAP MM 采购订单中货币单位怎么修改
    ABAP 屏幕字段无搜索帮助处理
  • 原文地址:https://www.cnblogs.com/0519xf/p/4702276.html
Copyright © 2011-2022 走看看