现在的位置: 首页 > 综合 > 正文

《人人都玩开心网:Ext JS+Android+SSH整合开发Web与移动SNS》销售排名第4,发篇ExtJS的文章(拖放树结点)庆祝下

2013年10月14日 ⁄ 综合 ⁄ 共 746字 ⁄ 字号 评论关闭

    《人人都玩开心网:Ext JS+Android+SSH整合开发Web与移动SNS》一书上架短短几天,就进入了互动网计算机类销售总排名第4的好成绩(见下图)。现发篇Ext JS的技术文章庆祝下。



拖放树结点



在本文将介绍TreePanel组件非常有意思的一个功能:结点拖放。要使TreePanel组件的结点可以拖放非常简单,只需要将TreePanel类的enableDD选项参数设为true即可。当然,要想实现更复杂的功能,还需要配合其他的参数和事件。

一、结点拖放的位置

拖放结点包含了两个动作,拖(drag)和放(drop)。拖很好理解,就是将结点拖起来,拖哪一个结点的效果都是一样的。不过放结点就比较复杂了。放结点可分为如下两种情况:

  • 追加(append)结点:如果将拖动的结点正好放在非叶子结点的上面,TreePanel组件会将这个结点移动到非叶子结点下面作为该结点的子结点。由于TreePanel的限制,叶子结点不能append
  • 在同一层做上下移动(abovebelow):
    如果将拖动的结点放在叶子结点上,或放在非叶子结点的侧面,会将拖动结点作为兄弟结点来放置。

下面的设置将TreePanel组件设为结点可拖动状态。

var tree = new Ext.tree.TreePanel({
    el: 'div
-tree',
    enableDD:
true
    loader: 
new Ext.tree.TreeLoader()
});

在浏览器地址栏中输入如下的URL
    http://localhost:8080/netdisk/tree/drapdrop.html
    当显示出树形结点时,按上面的拖动方法来拖动结点,会出现如图
1、图2和图3所示的拖动效果。

        图1

抱歉!评论已关闭.