【问题标题】:Drag Drop images into EXTJS TreePanel and TreeNode将 Drop 图像拖放到 EXTJS TreePanel 和 TreeNode 中
【发布时间】:2010-11-02 12:14:45
【问题描述】:

我有一个 ExtJs TreePanel,我在其中将 enableDrop 设置为 true,并将属性 ddGroup 设置为其中一个组。我有另一个 ExtJs 视图,我需要从中拖放图像。我知道为此定义的 ddGroup 是 media

但是拖放永远不会发生。这是我的代码 sn-p:

var treePanel = new Ext.tree.TreePanel({
 "id": "myTree",
 "lines": true,
 "animate": true,
 "enableDrop": true,
 "enableDrag": false,
 "ddGroup": "media",
 "containerScroll": true,
 "autoScroll": true,
 "split": true,
 "stateful": true,
 "renderTo": "treeStruc",
 "loader": //my loader,
 "root": new Ext.tree.AsyncTreeNode(treeRootConfig),
 "dropConfig": {
  "ddGroup": 'media'
 },
 "listeners": { 
  "nodedrop": function(e) {   
   //do the check
  }
 }                    
});

还有什么需要做的吗?

谢谢。

【问题讨论】:

  • 这是正确的吗? "enableDrag": false, 我会假设 enableDrag 应该是 true
  • 实际上我不想有能力拖动我的 TreeNode。只想把东西放进我的树节点。反正我试过了,还是不行。
  • 不确定,但我想指出,不需要在所有配置名称周围输入双引号。节省一些输入!
  • 谢谢。会记住这一点。但是核心问题对我来说仍然没有解决:(

标签: extjs


【解决方案1】:

虽然文档指出当“DD 对象”被拖放到树节点上时会触发 nodedrop,但来源似乎表明它仍然需要一个有效的节点。

为了实现从视图到树的拖放,我相信您必须初始化自己的 TreeDropZone 来处理不兼容树的节点的丢弃 DD 项。

这个例子:http://dev.sencha.com/deploy/dev/examples/dd/dragdropzones.html 显示了类似的东西(尽管它是一个网格拖放视图),但你可能必须使用 TreeDropZone 实例化,他们已经使用了直接的 Ext.dd.DropZone 对象.

另外,请确保您的源视图和目标树共享相同的 ddGroup - 尽管我认为您提到它们确实如此。

我希望这对您有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-24
    • 2020-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多