import javax.swing.*;
import javax.swing.event.*;
import javax.swing.tree.*; public class Root extends JFrame
{
//创建节点数组
DefaultMutableTreeNode[] dmtn={
new DefaultMutableTreeNode(new NodeValue("图书馆管理系统")),
new DefaultMutableTreeNode(new NodeValue("学生用户管理")),
new DefaultMutableTreeNode(new NodeValue("图书管理")),
new DefaultMutableTreeNode(new NodeValue("查询图书")),
new DefaultMutableTreeNode(new NodeValue("借阅预约图书")),
new DefaultMutableTreeNode(new NodeValue("归还挂失图书")),
new DefaultMutableTreeNode(new NodeValue("交纳罚款")),
new DefaultMutableTreeNode(new NodeValue("管理员管理")),
new DefaultMutableTreeNode(new NodeValue("退出"))
};
//创建树模型,指定根节点为“学生管理系统”
DefaultTreeModel dtm = new DefaultTreeModel(dmtn[0]);
JTree jt = new JTree(dtm);//创建包含dtm树模型的JTree对象
JScrollPane jsp=new JScrollPane(jt);//为JTree创建滚动窗体   private JSplitPane jsplr=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true);//创建分割窗体对象
private JPanel jp=new JPanel();//创建JPanel对象   public Root() {
this.addTreeListener();//为树节点注册事件监听器
for (int i=1;i<9;i++)
{//向根节点添加子节点
dtm.insertNodeInto(dmtn[i],dmtn[0],i-1);
}
jt.setEditable(false);//设置该树中节点是可编辑的
this.add(jsplr);//将包含树的滚动窗口添加进窗体
jsplr.setLeftComponent(jt);//将包含树的滚动窗口添加进左边的子窗口
jp.setBounds(200,50,600,500);//为jp设置大小位置并添加进右边的子窗口
jsplr.setRightComponent(jp);
jsplr.setDividerLocation(200);//设置分隔条的初始位置
jsplr.setDividerSize(4);//设置分隔条的宽度
//设置窗体的关闭动作,标题,大小,位置及可见性
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置窗体首次出现的大小和位置--自动居中
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
int centerX = screenSize.width/2;
int centerY = screenSize.height/2;
int w=600;//本窗体宽度
int h=400;//本窗体高度
this.setBounds(centerX-w/2,centerY-h/2-10,w,h);//设置窗体出现在屏幕中央 // this.setExtendedState(JFrame.MAXIMIZED_BOTH);//窗体全屏 this.setVisible(true);//设置窗体可见
jt.setShowsRootHandles(true);//设置显示根节点的控制图标
}   public static void main(String[] args) {
   // TODO Auto-generated method stub
   new Root();
}

java实现树型结构样式的更多相关文章

  1. java树型结构的数据展现设计

    在做一个需求管理的页面时,需求的展现是不限层级树型结构,需求下还可以分拆任务,页面要展现的字段有20多个,而且需求采用通用表单设计,db采用大宽表存储,有一百多个字段.目前数据量不大,第一版采用普通的 ...

  2. JSP中的一个树型结构

    看方力勋的javaWeb,采用左右值来表示树型结构(就是俺门的多级分类)表结构 页面代码 <%@ page language="java" import="java ...

  3. dzzoffice的树型结构用户管理设计

    在DzzOffice1.1的开发中,针对用户使用群体重新设计了,机构.部门.用户管理应用. 传统OA,企业相关程序,一般是设置机构-设置部门-设置职位-添加用户这样的步骤.每个步骤分为不同的管理界面. ...

  4. java集合树状结构及源码

    java集合树状结构及源码 最近一直想看一下java集合的源码,毕竟平时用的比较多,但总是感觉是跟着习惯new出来一个对象,比如ArrayList,HashMap等等,所以就简单的看了一下,了解了一下 ...

  5. 20-Ubuntu-文件和目录命令-查看目录树型结构-tree

    tree 以树状图列出当前目录下的文件目录结构 选项 含义 -d 只显示当前目录的子目录树型结构   显示当前目录的子目录和文件树型结构 例: 1.查看文档目录下的子目录和文件树型结构 2.查看文档目 ...

  6. Delphi实现树型结构

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  7. SQL Server 通过“with as”方法查询树型结构

    一.with as 公用表表达式 类似VIEW,但是不并没有创建对象,WITH  AS 公用表表达式不创建对象,只能被后随的SELECT语句,其作用: 1. 实现递归查询(树形结构) 2. 可以在一个 ...

  8. Delphi实现树型结构具体实例

    unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...

  9. web api+递归树型结构

    using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Ne ...

随机推荐

  1. Hadoop优先级调度

    当同时在集群中运行多个作业时,默认情况下,Hadoop将提交的作业放入一个FIFO,一个作业结束后,Hadoop就启动下一个作业. 当一个运行时间长但是优先级较低的作业先于运行时间短而优先级较高的作业 ...

  2. jQuery中的ajax使用详解

    $.ajax({   type : "get",   url : "http://www.w3school.com.cn/jquery/ajax_ajax.asp&quo ...

  3. Openjudge-NOI题库-出书最多

    描述 假定图书馆新进了m(10 ≤ m ≤ 999)本图书,它们都是由n(2 ≤ n ≤ 26)个作者独立或相互合作编著的.假设m本图书编号为整数(1到999),作者的姓名为字母('A'到'Z'),请 ...

  4. centos redis 安装

    # wget http://download.redis.io/releases/redis-2.8.6.tar.gz # tar xzf redis-2.8.6.tar.gz # cd redis- ...

  5. .net后台代码临时表创建

    写法一: var dt = new DataTable(); dt.Columns.Add(new DataColumn("Id", System.Type.GetType(&qu ...

  6. 【linux-shell】rsync

    https://en.wikipedia.org/wiki/Rsync https://en.wikipedia.org/wiki/Andrew_Tridgell 安德鲁.锤子,发布了rsync的第一 ...

  7. Knockout js 绑定 radio 时,当绑定整形的时候,绑定不生效

    解决方案: 使用checkedValue和checked 组合,如下代码. <div><input type="radio" name="flavorG ...

  8. Windows下NexusPHP搭建PT站过程

    搭建环境:Win7+XAMPP(5.5) 网站根目录: D:\IT\XAMPP5.5\htdocs\ 1 下载源码程序http://sourceforge.net/projects/nexusphp/ ...

  9. 简单的 Android 拍照并显示以及获取路径后上传

    简单的 Android 拍照并显示以及获取路径后上传 Activity 中的代码,我只贴出重要的事件部分代码 public void doPhoto(View view) { destoryBimap ...

  10. L3-007. 天梯地图

    L3-007. 天梯地图 题目链接:https://www.patest.cn/contests/gplt/L3-007 Dijstra 这题是Dijstra的变形,麻烦的是两种最短路的相同距离时的选 ...