EXTJS 4 树形表格组件使用示例
一、整体效果图
二、使用说明及效果图
2.1、程序代码及说明:
2.1.1、表格存储部分的代码说明
//开启tooltip工具 Ext.QuickTips.init(); //定义model Ext.define('partModel', { extend: 'Ext.data.Model', fields: [ {name: 'partNo', type: 'string'}, {name: 'partName', type: 'string'}, {name: 'partVer', type: 'string'} ] }); //创建一个TreeStore var store = Ext.create('Ext.data.TreeStore', { model: 'partModel', root:treeGridData, //在其他文件中定义的静态树型数据 folderSort: true });
属性
|
说明
|
---|---|
root |
Ext.data.Model/Ext.data.NodeInterface/Object 根节点,当使用store是静态数据时,使用该属性指定数据.若需要从服务器上动态获取,则可以使用proxy属性 proxy属性的使用可参见extjs 官方 api |
folderSort |
Boolean 默认为 false 当设置为true时,叶子节点总是会在非叶子节点后面. |
treeGridData的具体内容请参见http://download.csdn.net/detail/shui878412/7994009
2.1.2、树节点MODEL说明
TreeStore中使用了一个 Ext.data.NodeInterface来表示数的节点;在TreeStore的setRootNode方法中会调用NodeInterface的decorate方法向TreeStore的model增加一些属性,这些属性是在展示树时必须使用的.这些属性详见如下:
名称
|
类型
|
默认值
|
说明
|
---|---|---|---|
parentId | idType | null | 父节点ID,计算出来model中ID的类型 |
index | int | null | 可用于排序 |
depth | int | 0 | |
expanded | bool | false | 是否展开 |
expandable | bool | false | 是否可以展开 |
checked | auto | null | |
leaf | bool | false | |
cls | string | null | 样式 |
iconCls | string | null | 图标样式 |
icon | string | null | 图标路径 |
root | boolean | false | 是否为根节点 |
isLast | boolean | false | |
isFirst | boolean | false | |
allowDrop | boolean | true | 是否可以被删除 |
allowDrag | boolean | true | 是否可以被拖动 |
loaded | boolean | false | |
loading | boolean | false | |
href | string | null | |
hrefTarget | string | null | |
qtip | string | null | tooltip内容 |
qtitle | string | null | tooltip标题 |
children | auto | null | 子节点,一般是数组 |
在有需要的时候可以设置这些属性以达到我们想要的结果.如可以在store中通过指定icon/iconcls的值来设置树节点中的图片等.
2.1.3、表格显示部分的代码说明
var tree = Ext.create('Ext.tree.Panel', {
title: 'Ext树型表格使用示例',
width: 400,
height: 300,
renderTo: 'treeGridDiv',
useArrows: true,
rootVisible: false,
store: store,
multiSelect: true,
defaults:{
sortable: true
},
columns: [{
xtype: 'treecolumn',
text: '部件编号',
flex:2,
dataIndex: 'partNo'
},{
text: '部件名称',
flex:1,
dataIndex: 'partName'
},{
text: '版本',
width: 70,
dataIndex: 'partVer'
}]
});
属性
|
说明
|
---|---|
useArrows |
Boolean 默认为false true时使用箭头()样式,false是使用的是加号()样式 |
rootVisible |
Boolean 默认为true 是否显示根节点 |
multiSelect |
Boolean 默认为false 是否可以选中多行 |
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。