用java 生成一个树形菜单

用java 生成一个树形菜单
用java 生成一个树形菜单

用java 生成一个树形菜单

package com.csii;

import java.awt.GridLayout;

import javax.swing.JEditorPane;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JS crollPane;

import javax.swing.JTree;

import javax.swing.SwingUtilities;

import javax.swing.UIManager;

import javax.swing.event.TreeSelectionEvent;

import javax.swing.event.TreeSelectionListener;

import javax.swing.tree.DefaultMutableTreeNode;

import javax.swing.tree.TreeSelectionModel;

public class TreeDemo1 extends JFrame implements TreeSelectionListener { private static final long serialVersionUID = 1L;

private JPanel jContentPane = null;

private JTree jTree = null;

private JEditorPane jEditorPane = null;

private JS crollPane jS crollPane = null;

public JScrollPane getjScrollPane() {

if(jScrollPane==null){

jScrollPane = new JScrollPane();

jScrollPane.setViewportView(getJTree());

}

return jScrollPane;

}

DefaultMutableTreeNode top = null; // @jve:decl-index=0: /**

* This is the default constructor

*/

public TreeDemo1() {

super();

initialize();

}

/**

* This method initializes this

*

* @return void

*/

private void initialize() {

this.setSize(438, 309);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setContentPane(getJContentPane());

this.setTitle("JFrame");

}

/**

* This method initializes jContentPane

*

* @return javax.swing.JPanel

*/

private JPanel getJContentPane() {

if (jContentPane == null) {

GridLayout gridLayout = new GridLayout(); gridLayout.setRows(1);

gridLayout.setColumns(2);

jContentPane = new JPanel(); jContentPane.setLayout(gridLayout); jContentPane.add(getjScrollPane(), null); jContentPane.add(getJEditorPane(), null);

}

return jContentPane;

}

/**

* This method initializes jTree

*

* @return javax.swing.JTree

*/

private JTree getJTree() {

if (jTree == null) {

top = new DefaultMutableTreeNode("黄山"); createNodes(top);

jTree = new JTree(top);

jTree.getSelectionModel().setSelectionMode( TreeSelectionModel.SINGLE_TREE_SELECTION); jTree.addTreeSelectionListener(this);

}

return jTree;

}

private void createNodes(DefaultMutableTreeNode top) {

DefaultMutableTreeNode jingdian = null, jiaotong = null, zhusu = null, binguan = null, luying = null, jiesu = null; jingdian = new DefaultMutableTreeNode("景点");

jingdian.add(new DefaultMutableTreeNode("景点1"));

jingdian.add(new DefaultMutableTreeNode("景点2"));

jiaotong = new DefaultMutableTreeNode("交通");

jiaotong.add(new DefaultMutableTreeNode("路线1"));

jiaotong.add(new DefaultMutableTreeNode("路线2"));

jiaotong.add(new DefaultMutableTreeNode("路线3"));

zhusu = new DefaultMutableTreeNode("住宿");

zhusu.add(new DefaultMutableTreeNode("A住宿"));

zhusu.add(new DefaultMutableTreeNode("B住宿"));

zhusu.add(new DefaultMutableTreeNode("C住宿"));

binguan = new DefaultMutableTreeNode("宾馆");

binguan.add(new DefaultMutableTreeNode("X宾馆"));

binguan.add(new DefaultMutableTreeNode("Y宾馆"));

binguan.add(new DefaultMutableTreeNode("Z宾馆"));

binguan.add(new DefaultMutableTreeNode("XYZ宾馆"));

luying = new DefaultMutableTreeNode("露营");

luying.add(new DefaultMutableTreeNode("方式1"));

luying.add(new DefaultMutableTreeNode("方式2"));

jiesu = new DefaultMutableTreeNode("借宿");

jiesu.add(new DefaultMutableTreeNode("借宿1"));

jiesu.add(new DefaultMutableTreeNode("借宿2"));

jiesu.add(new DefaultMutableTreeNode("借宿3"));

top.add(jingdian);

top.add(jiaotong);

top.add(zhusu);

top.add(binguan);

top.add(luying);

top.add(jiesu);

}

/**

* This method initializes jEditorPane

*

* @return javax.swing.JEditorPane

*/

private JEditorPane getJEditorPane() {

if (jEditorPane == null) {

jEditorPane = new JEditorPane();

}

return jEditorPane;

}

@Override

public void valueChanged(TreeSelectionEvent e) { DefaultMutableTreeNode node = (DefaultMutableTreeNode) jTree .getLastSelectedPathComponent();

if (node == null)

// Nothing is selected.

return;

if(node.isRoot()){

jEditorPane.setText("黄山的简介");

}

}

public static void main(String[] args) {

SwingUtilities.invokeLater(new Runnable() {

@Override

public void run() {

try {

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); }catch(Exception e){

e.printStackTrace();

}

new TreeDemo1().setVisible(true);

}

});

}

}

ASP NET+TreeView树型菜单操作实例(代码调试通过)

https://www.360docs.net/doc/ad5699081.html, TreeView树型菜单操作实例(代码调试通过) 本实例完成TreeView树型菜单添加,修改,删除,绑定DropDownList功能,移动功能读者可以自行书写.aspx代码

TreeView操作实例
节点名

js树形菜单代码

a {text-decoration:none;} a,a:visited {color:#000;background:inherit;} body {margin:0;padding:20px;font:12px tahoma,宋体,sans-serif;} dt {font-size:22px;font-weight:bold;margin:0 0 0 15px;} dd {margin:0 0 0 15px;} h4 {margin:0;padding:0;font-size:18px;text-align:center;} p {margin:0;padding:0 0 0 18px;} p a,p a:visited {color:#00f;background:inherit;} /*CNLTreeMenu Start*/ .CNLTreeMenu img.s {cursor:pointer;vertical-align:middle;} .CNLTreeMenu ul {padding:0;} .CNLTreeMenu li {list-style:none;padding:0;} .Closed ul {display:none;} .Child img.s {background:none;cursor:default;} #CNLTreeMenu1 ul {margin:0 0 0 17px;} #CNLTreeMenu1 img.s {width:20px;height:15px;} #CNLTreeMenu1 .Opened img.s {background:url(skin1/opened.gif) no-repeat 0 0;} #CNLTreeMenu1 .Closed img.s {background:url(skin1/closed.gif) no-repeat 0 0;} #CNLTreeMenu1 .Child img.s {background:url(skin1/child.gif) no-repeat 3px 5px;} #CNLTreeMenu2 ul {margin:0 0 0 17px;} #CNLTreeMenu2 img.s {width:17px;height:15px;} #CNLTreeMenu2 .Opened img.s {background:url(skin2/opened.gif) no-repeat 4px 6px;} #CNLTreeMenu2 .Closed img.s {background:url(skin2/closed.gif) no-repeat 3px 6px;} #CNLTreeMenu2 .Child img.s {background:url(skin2/child.gif) no-repeat 3px 5px;} #CNLTreeMenu3 ul {margin:0 0 0 17px;} #CNLTreeMenu3 img.s {width:34px;height:18px;} #CNLTreeMenu3 .Opened img.s {background:url(skin3/opened.gif) no-repeat 0 1px;} #CNLTreeMenu3 .Closed img.s {background:url(skin3/closed.gif) no-repeat 0 1px;} #CNLTreeMenu3 .Child img.s {background:url(skin3/child.gif) no-repeat 13px 2px;} /*CNLTreeMenu End*/ /*Temp CSS for View Demo*/ #CNLTreeMenu1,#CNLTreeMenu2,#CNLTreeMenu3 {float:left;width:249px;border:1px solid #99BEEF;background:#D2E4FC;color:inherit;margin:3px;padding:3px;} #CNLTreeMenu1,#CNLTreeMenu2 {padding-bottom:15px;} .ViewCode { clear:both; border:1px solid #FFB900;background:#FFFFCC;color:inherit;margin:3px;padding:3px; } .ViewCode h6 {color:#00f;}

公司部门岗位职责和组织机构树

公司部门岗位职责和组织机构树 一、公司的组织结构 董事长(总经理)工作职责 一、董事长对董事会负责。 二、召集和组织召开董事会会议,决定聘用各部门以及各二级机构高管人员。对 认为不能胜任本岗位工作的高管建议行政人事部解聘,换岗直至解除劳动合同。 三、召集和组织召开董事会会议,审议和批准各部门副总提交的工作计划、工作 总结。 四、召集和组织召开董事会会议,决定公司投资、增资、减资等重大事项;审议 和批准总经理提交的重大经营决策、方案、资金借款等。批准年度财务报表、收支预算、年度利润分配方案;研究和决定各部门以及各二级机构总经理和副总提出的其他重大问题。

五、对公司的经营活动、内部管理及执行董事会决议的落实和执行情况进行监 督、检查。 六、对危害公司形象、利益,失职、营私舞弊等行为及时进行处理,对造成重大 损失的进行责任认定,进行处理和处罚。 七、对公司的日常经营活动、管理措施提供参考意见。 八、对公司的资金、财产进行有效管理,保证公司财产安全。 九、签署对外上报、印发的各种重要报表、文件、资料。 十、拥有设立和拆除公司分支机构的决定权。 各部门副总经理工作职责 一、副总经理在公司董事长安排下工作,具体负责公司分配的本部门相关业务工 作的执行和实施及处理日常工作。 二、负责组织编制、完善本部门各项管理制度,加强公司员工队伍建设工作。 三、认真执行分管业务,并且及时回报事情办理的结果和执行状况。 四、严格执行公司规章制度,对分管业务范围内工作人员进行管理,督促工作人 员办理事务,对自己不能处理或不能及时处理的事项及时向董事长汇报。 五、负责公司本部门管理规范化工作、管理得失的总结及经验推广; 六、参与选聘、任用主管部门各岗位人选;负责考核下属各部门及岗位的工作绩 效;审核员工的奖、惩标准及方案。 七、对内负责处理下属部门与公司其他部门之间的协作关系,对外做好相关外联 工作。 八、参与公司重大投资决策,拟订公司相关计划、制度等。 九、定期或不定期向董事长汇报业务工作。

构建BBS论坛系统项目中后台管理页面中的树形菜单的应用示例

1.1构建BBS论坛系统项目中后台管理页面中的树形菜单的应用示例1.1.1应用XTree树型控件在页面中实现树形菜单 1、应用XTree树型控件 (1)XTree树型控件 xtree.js是Web开发中运用较多的一个树型控件。其入门简单,功能强大,很多人在它的基础上开发出了自己的树型控件。 XloadTree也是https://www.360docs.net/doc/ad5699081.html,/公司的基于JavaScript的建立树型目录的开源产品,扩展性强,使用简单。由于XloadTree是基于XmlHttp请求/响应模型,必须使用http协议访问代码才可以正确加载XML文件。 (2)下载XTree树型控件(编程方式的系统包) https://www.360docs.net/doc/ad5699081.html,/ https://www.360docs.net/doc/ad5699081.html,/download/xtree117.zip

(3)下载XTree树型控件(XML文件方式的系统包、而且该XML文件可以是动态创建)https://www.360docs.net/doc/ad5699081.html,/dhtml/xloadtree/xloadtree.html

2、xtree有两种使用模式 其一为显示构造树,而其二为运用XML数据源,同时该XML数据源也可以动态在Servlet 组件中创建。 3、显示构造树(可以参考systemManage/contentPage/leftMenu.jsp) (1)第一步需要引用其样式单文件 (2)第二步再引用 xtree.js 文件 (3)第三步编程WebFXTreeItem以产生出菜单 var treeRoot = new WebFXTree('蓝梦BBS论坛后台管理菜单'); var tree_userInfoManaeFolder = new WebFXTreeItem("用户信息管理") var forwardQueryUserInfoItem=new WebFXTreeItem("查询一般用户信息"); forwardQueryUserInfoItem.action=''; forwardQueryUserInfoItem.target="mainFrame"; tree_userInfoManaeFolder.add(forwardQueryUserInfoItem); var forwardQueryVIPUserInfoItem=new WebFXTreeItem("查询VIP用户信息"); forwardQueryVIPUserInfoItem.action='

B+ 树的组织结构

B+ 树的组织结构 1、B+树索引的总体结构 ①B+树索引是一个多级索引,但是其结构不同于多级顺序索引; ②B+树索引采用平衡树结构,即每个叶结点到根的路径长度都相同; ③每个非叶结点有到n个子女,n对特定的树是固定的; ④B+树的所有结点结构都相同,它最多包含n-1个搜索码值K1、K2、…、Kn-1,以及n个指针P1、P2、…、Pn,每个结点中的搜索码值按次序存放,即如果i

ABAP 树型菜单程序

ABAP 树型菜单程序 Jerry 项目中树型菜单很少用到,但是学会了,也是一种好事。最近,客户方就有一个要求,能够实现特殊的文档管理,包括动态的树型菜单。此文档中,我就介绍如何用ABAP创建一个简单的树型菜单!下面几个步骤只讲创建树型菜单几个重要的地方,最后面是详细的实现代码。建议学者粗略看看步骤,重点看最后的代码,然后自己学着按下面的DEMO写测试程序,直到成功为止,如有不懂的地方,可以到群内留言。或者文档有写得不好的地方,也可以提出来,我们一起加以改善! 一. 创建一个DIALOG屏幕(0900),创建一个定制控制: TREE_CONTAINER,作为一个容器来存放程序创建的 树型菜单,如下图所示: 二. 在屏幕PBO事件中,创建一个MOUDLE: m_init_tree,然后创建一个Subroutine: frm_init_tree。 在Subroutine中创建一个Object: g_application,g_application指向自己创建的一个Class:lcl_application。这个Class主要定义了一些事件,比如单击,双击,展开,链接单击等事件,用来注册及捕获树型菜单的父节点,子节点单击,双击,展开,链接单击等事件,然后在自己Class :lcl_application中相应自定义的Method中写相应的Code,实现特殊的操作。 三. 用程序创建一个容器类cl_gui_custom_container的实例g_custom_container,代码如下 CREATE OBJECT g_custom_container EXPORTING container_name = 'TREE_CONTAINER' EXCEPTIONS cntl_error = 1 cntl_system_error = 2 create_error = 3 lifetime_error = 4 lifetime_dynpro_dynpro_link = 5.

安全生产管理组织机构树状图

安全生产管理组织机构树状图 安全管理组织机构职能分配 项目经理的安全生产职责 1、项目经理是本工程项目安全生产的第一责任人,对本工程项目的劳动保护和安全生产负全面领导责任。认真执行“安全第一,预防为主”的方针。严格按安全生产规章制度和单位工程安全技术措施执行。 2、支持贯彻落实国家、地方、行业的安全生产方针、政策、法规、标准和各项规章制度;主持贯彻执行上级有关按目前生产文件、通知的工作。加强对项目部职工的安全意识教育和遵章守纪教育,组织对

新工人的进场三级安全教育,提高职工的自我防护能力。 3、支持建立工程项目的安全生产保证体系和主持制定相应的各项安全生产管理标准、制度、办法和实施细则,并主持监督其实施。 4、主持制定月安全生产计划,组织各有关人员解决实施安全生产计划的有关问题,并主持监督其实施。 5、支持定期的安全生产检查和研究解决存在的问题。 6、主持安全生产领导小组的工作。支持、督促项目部有关人员执行安全生产责任制,及时听取安全人员的意见。制止违章指挥和违章作业。 7、定期召开安全会议,研究解决当前安全生产中的问题和改进措施,组织领导经常性的安全检查和对安全设施使用前的检查、验收。及时消除事故隐患。 8、主持对重大安全伤亡事故的及时上报、调查、处理、善后、制定和落实整改措施的工种,不得有任何的隐瞒、虚报和拖延不报情况发生。 项目技术负责人的安全生产职责 1、对本工程项目的劳动保护和安全生产的技术工作负全面领导责任。 2、支持贯彻国家、地方和行业有关的安全技术法规和标准,支持本工程项目安全技术标准的编制和审定工作。 3、支持重大项目的安全技术和改善劳动条件问题的研究并审定安全生产决策中的技术可靠性。 4、在主持组织编制和审定施工方案、技术措施以及采用新技术、新工艺、新设备的同时,主持组织并参与编制和审定相应的安全生产技术措施。 5、主持对职工进行安全教育和培训的工作,主持重要项目的安全技术交底工作。 6、负责提出安全技术项目和实施措施,并检查其实施情况,组织定期检查并及时解决安全生产工作中所存在的技术问题。

数据结构课程设计报告,含菜单

算法与数据结构课程设计 报告 系(院):计算机科学学院 专业班级:计科11005 姓名:张林峰 学号: 201003784 指导教师:詹泽梅 设计时间:2012.6.11 - 2012.6.18 设计地点:12教机房

目录 一、课程设计目的 (2) 二、设计任务及要求 (2) 三、需求分析 (2) 四、总体设计 .............. 错误!未定义书签。 五、详细设计与实现[含代码和实现界面].. 8 六、课程设计小结 (15)

一.设计目的 1.能根据实际问题的具体情况,结合数据结构课程中的基本理论和基本算法,分析并正确确定数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。 2.提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 3.初步掌握软件开发过程中问题分析、系统设计、程序编码、测试等基本方法和技能。 4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。 5.培养根据选题需要选择学习书籍,查阅文献资料的自学能力。二.设计任务及要求 根据《算法与数据结构》课程的结构体系,设计一个基于DOS菜单的应用程序。要利用多级菜单实现各种功能。比如,主界面是大项,主要是学过的各章的名字诸如线性表、栈与队列、串与数组及广义表等,子菜单这些章中的节或者子节。要求所有子菜单退出到他的父菜单。编程实现时,要用到C++的面向对象的功能。 三.需求分析 菜单运用极其广泛,应用于各行各业。菜单运用起来极其方便。随着社会的发展,社会的行业出现多样化,也就需要各式

jQuery树形菜单

jQuery树形菜单(1)jquery.treeview https://www.360docs.net/doc/ad5699081.html,/fylsh/blog/item/af6ef8dd16056cadcd116602.html jQuery的树形插件资料URL:http://bassistance.de/jquery-plugins/jquery-plugin-treeview/ 从该网站Download得到jquery.treeview.zip文件,里面有需要js、css、images等文件以及Demo, 使用时只要在页面中引入jquery.js、jquery.cookie.js、jquery.treeview.js(树形菜单的方法)、jquery.treeview.css即可。同时保证jquery.treeview.css文件和images文件夹的相对位置,在同一目录下即可 接下来构建树形菜单的内容如下:

  • Folder 1
    • Item 1
  • Folder 2
    • Subfolder 2.1
      • File 2.1.1
      • File 2.1.2
    • File 2.2
  • Folder 3(closed at start)
    • File 3.1
  • File 4
最外面的结点作为外结点,每一个
    表示一个结点,结点中可以添加很多项,项都是以
  • 来说明项里面的内容可以是随意的,比如上面用 来表示结点的内容,你可以用等,当项的内容后面紧接着添加
      后,那么该项就变成了父结点,
      • 之间不能有html代码,
      • 中不能有
      • 元素,否则不会显示。 接下来调用jquery.treeview.js提供的treeview()进行展现。首先把树形菜单对象转化为

        安全生产管理组织机构树状图

        会理县虫元水库等13座病险水库除险加固工程(第二批)(会理县槽子田水库) 安全生产管理机构及职能 分配文件 编制人: 审核人: 编制单位:四川省华龙建筑工程有限责任公司 编制时间:2019年03月10日

        安全生产管理组织机构树状图

        安全管理组织机构职能分配 项目经理的安全生产职责 1、项目经理是本工程项目安全生产的第一责任人,对本工程项目的劳动保护和安全生产负全面领导责任。认真执行“安全第一,预防为主”的方针。严格按安全生产规章制度和单位工程安全技术措施执行。 2、支持贯彻落实国家、地方、行业的安全生产方针、政策、法规、标准和各项规章制度;主持贯彻执行上级有关按目前生产文件、通知的工作。加强对项目部职工的安全意识教育和遵章守纪教育,组织对新工人的进场三级安全教育,提高职工的自我防护能力。 3、支持建立工程项目的安全生产保证体系和主持制定相应的各项安全生产管理标准、制度、办法和实施细则,并主持监督其实施。 4、主持制定月安全生产计划,组织各有关人员解决实施安全生产计划的有关问题,并主持监督其实施。 5、支持定期的安全生产检查和研究解决存在的问题。 6、主持安全生产领导小组的工作。支持、督促项目部有关人员执行安全生产责任制,及时听取安全人员的意见。制止违章指挥和违章作业。 7、定期召开安全会议,研究解决当前安全生产中的问题和改进措施,组织领导经常性的安全检查和对安全设施使用前的检查、验收。及时消除事故隐患。 8、主持对重大安全伤亡事故的及时上报、调查、处理、善后、制定和落实整改措施的工种,不得有任何的隐瞒、虚报和拖延不报情况发生。 项目技术负责人的安全生产职责 1、对本工程项目的劳动保护和安全生产的技术工作负全面领导责任。

        菜单树的设计与实现实验报告

        一、问题描述 创建table保存具有层次结构的菜单树信息,记录菜单的ID,名称,描述,父菜单(可为空)和可用性(enable/disable),菜单的深度无限制。 二、实验内容及步骤 1.首先以sysdba身份登录数据库,命令为:conn / as sysdba 2.创建用户表空间menu,数据文件为:d:\menu.dbf,大小20M,相关命令如下: create tablespace menu datafile 'd:\menu.dbf' size 20M; 3.创建新用户yjmin,默认表空间为新创建的menu表空间,相关命令如下: create user yjmin identified by yjmin default tablespace menu; 4.为新创建用户yjmin授权connect和resource角色; 5.以新创建的用户yjmin登录数据库,命令为:conn yjmin/yjmin; 6.创建序列,自动生成菜单ID,相关命令如下: create sequence id_seq start with 1 increment by 1; 7.创建表menu_tab保存菜单信息: create table menu_tab (id number primary key, name varchar2(50) not null, description varchar2(200), parent_menu varchar2(50), available varchar2(10) not null); 8.向表menu_tab中插入菜单数据,以示例数据插入,并提交插入的数据。 9.打开PL/SQL输出信息,命令为:set serveroutput on; 10.创建函数获取菜单ID: create or replace function get_menu_id (v_name varchar2) return number as

        标准树状导航菜单