前台Tree.zul

<?page title="Tree使用" contentType="text/html;charset=UTF-8"?>
<zk xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zkoss.org/2005/zul" xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul">
<window title="" border="normal" apply="test.treeCtrl"><tree id="tree" pageSize="10" mold="paging" rows="10" ><treecols><treecol label="Name"/><treecol label="Description"/></treecols><treefoot><treefooter label="底部"/></treefoot></tree>
</window>
</zk>

后台treeCtrl.java:

package test;import java.util.ArrayList;
import java.util.List;import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.util.GenericAutowireComposer;
import org.zkoss.zul.DefaultTreeModel;
import org.zkoss.zul.DefaultTreeNode;
import org.zkoss.zul.Tree;
import org.zkoss.zul.Treecell;
import org.zkoss.zul.Treeitem;
import org.zkoss.zul.TreeitemRenderer;
import org.zkoss.zul.Treerow;public class treeCtrl extends GenericAutowireComposer<Component>{private static final long serialVersionUID = 1L;private Tree tree;@Overridepublic void doAfterCompose(Component comp) throws Exception {// TODO Auto-generated method stubsuper.doAfterCompose(comp);DefaultTreeModel<FileInfo> model = new DefaultTreeModel<FileInfo>(getFileInfoTreeData());tree.setModel(model);tree.setItemRenderer(new FileInfoRenderer());}private DefaultTreeNode<FileInfo> getFileInfoTreeData() {List<DefaultTreeNode<FileInfo>> inner3 = new ArrayList<DefaultTreeNode<FileInfo>>();inner3.add(new DefaultTreeNode<FileInfo>(new FileInfo("zcommon.jar", "ZK Common Library")));inner3.add(new DefaultTreeNode<FileInfo>(new FileInfo("zk.jar", "ZK Core Library")));List<DefaultTreeNode<FileInfo>> inner2 = new ArrayList<DefaultTreeNode<FileInfo>>();inner2.add(new DefaultTreeNode<FileInfo>(new FileInfo("/lib", "ZK Libraries"), inner3));inner2.add(new DefaultTreeNode<FileInfo>(new FileInfo("/src", "Source Code")));inner2.add(new DefaultTreeNode<FileInfo>(new FileInfo("/xsd", "XSD Files")));List<DefaultTreeNode<FileInfo>> inner1 = new ArrayList<DefaultTreeNode<FileInfo>>();inner1.add(new DefaultTreeNode<FileInfo>(new FileInfo("/doc", "Release and License Notes")));inner1.add(new DefaultTreeNode<FileInfo>(new FileInfo("/dist", "Distribution"), inner2));return new DefaultTreeNode<FileInfo>(null, inner1);}public class FileInfoRenderer implements TreeitemRenderer<DefaultTreeNode<FileInfo>>{@Overridepublic void render(Treeitem item, DefaultTreeNode<FileInfo> data, int index)throws Exception {// TODO Auto-generated method stub
            item.setValue(data);final FileInfo fi = data.getData();item.setOpen(false);//for update treeNode dataTreerow tr = item.getTreerow();if(tr == null) {tr = new Treerow();} else {tr.getChildren().clear();}item.appendChild(tr);//render file path cellTreecell pathCell = new Treecell();pathCell.setLabel(fi.getPath());pathCell.setParent(tr);//render file description cellTreecell descriptionCell = new Treecell();descriptionCell.setLabel(fi.getDescription());descriptionCell.setParent(tr);}}public class FileInfo {private String path;private String description;public FileInfo() {}public FileInfo(String path, String description) {this.path = path;this.description = description;}public String getPath() {return path;}public void setPath(String path) {this.path = path;}public String getDescription() {return description;}public void setDescription(String description) {this.description = description;}}}

参考:

http://zkfiddle.org/sample/21g0stt/2-Another-new-ZK-fiddle#source-1

转载于:https://www.cnblogs.com/langdangyunliu/p/4589743.html

ZK tree使用mold相关推荐

  1. android 设置字体大小不随系统大小变化,App字体大小不随系统改变而改变

    在 "设置" , "显示" , "字体大小" 里面我们可以设置系统字体大小 App界面字体,如果被修改之后,可能就达不到理想状态的效果,界面 ...

  2. Zk中组建显示模型mold都有哪些

    Zk中组建显示模型mold都有哪些? zk大部份组建都有一个mold属性,此为显示模型,显示模型类似windows主题.网站主题等 例如组 tabbox组建,有default mold和手风琴acco ...

  3. ZK框架的分析与应用

    ZK框架的分析与应用 1 ZK框架的引入 1.1 概述 ZK是一套以 AJAX/XUL/Java 为基础的网页应用程序开发框架,用于丰富网页应用程序的使用界面.最大的好处是,在设计AJAX网络应用程序 ...

  4. 命令2-Create Project Tree

    2019独角兽企业重金招聘Python工程师标准>>> 1,"C" : create the project tree with dialog (该命令需要在工程 ...

  5. storm目录结构及在zk中的目录结构

    storm目录结构及在zk中的目录结构 @(STORM)[storm] storm目录结构及在zk中的目录结构 一storm在磁盘中的内容 一nimbus中的目录结构 1inbox目录 2stormd ...

  6. zk ui_高级ZK:异步UI更新和后台处理–第2部分

    zk ui 介绍 在第1部分中,我展示了如何在ZK应用程序中使用服务器推送和线程来执行后台任务. 但是,这个简单的示例具有一个重大缺陷,这使其对于实际应用程序而言是一种不好的方法:它为每个后台任务启动 ...

  7. mvvm 后端_ZK实际应用:MVVM –与ZK客户端API一起使用

    mvvm 后端 在以前的文章中,我们已经使用ZK的MVVM实现了以下功能: 将数据加载到表中 使用表单绑定保存数据 删除条目并以编程方式更新视图 ZK MVVM和ZK MVC实现方式之间的主要区别是, ...

  8. 高级ZK:异步UI更新和后台处理–第2部分

    介绍 在第1部分中,我展示了如何在ZK应用程序中使用服务器推送和线程来执行后台任务. 但是,这个简单的示例具有一个重大缺陷,这使其对于实际应用程序而言是一种不好的方法:它为每个后台任务启动了一个新线程 ...

  9. ZK的实际应用:MVVM –表单绑定

    这是我们从头开始构建ZK应用程序的第二集. 上一篇文章涉及使用MVVM将数据加载和呈现到表中. 在本文中,我们将向您介绍ZK MVVM的表单绑定. 目的 我们将构建一个"添加"功能 ...

最新文章

  1. 怎样修改flash builder注释里的@author
  2. 白话Elasticsearch10-深度探秘搜索技术之基于dis_max实现best fields策略进行多字段搜索
  3. hdu-5063 Operation the Sequence
  4. 解决Maven工程中报 Missing artifact jdk.tools:jdk.tools
  5. 分享Silverlight/WPF/Windows Phone/HTML5一周学习导读(1月9日-1月15日)
  6. Fiddler-2 Fiddler抓包原理
  7. DSP28335定时器学习
  8. Unty中通过镜像优化HDRI全景图体积
  9. python调用扫描仪设备_python 端口扫描仪
  10. windirstat怎么用_使用WinDirStat分析和管理硬盘空间
  11. Kosaraju算法+Trajan算法
  12. 微信公众平台开发实战(03) 运行日志写入SAE数据库
  13. 手机摄影-参数(光圈)
  14. gitHub常用命令笔记
  15. truncate函数
  16. Socket状态变迁图
  17. 使用Python实现键盘记录器和邮箱自动通知
  18. Hive-时间日期trunc-日期与数字截取函数
  19. 【路径规划】RRT(Rapidly-exploring Random Trees)算法
  20. 新版阿里云短信接口调用

热门文章

  1. 测量怎么显示坐标_全站仪坐标放样究竟如何操作?
  2. soul群聊显示服务器异常,soul群聊状态是什么
  3. 基于Echarts+HTML5可视化数据大屏展示—Echart图例使用
  4. natepad怎么连linux看日志,linux添加用户操作日志
  5. Java_FileInputStream_读一个文件
  6. 经典sql语句50题_SQL面试经典50题:带你从建表开始
  7. php oracle 中文字段,怎么解决php oracle乱码问题
  8. java有没有number数据类型_Java基本数据类型之Number
  9. stlink 升级固件以后失败_ST-Link不能下载程序的几种解决办法
  10. Jsoup从一个文件加载一个文档