2010-11-02 64 views
1

我有一個ExtJs TreePanel,其中我已將enableDrop設置爲true,並將屬性ddGroup設置爲其中一個組。我從這裏需要拖放圖像的另一個ExtJs視圖。而且我知道爲此定義的ddGroup是媒體拖放圖像到EXTJS TreePanel和TreeNode

但是拖放從不發生。這是我的代碼片段:

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 
    } 
}      
}); 

還有什麼需要做的?

謝謝。

+0

這是正確的嗎? '「enableDrag」:false,' 我假設'enableDrag'應該是'true' – Wolph 2010-11-02 12:23:07

+0

其實我不想有能力拖動我的TreeNode。只是想把東西放進我的treenode。無論如何,我試過,但仍然無法正常工作。 – user320550 2010-11-02 13:03:36

+0

不確定,但我想指出,不需要在所有配置名稱周圍輸入雙引號。保存一些輸入! – 2010-11-02 15:46:17

回答

0

儘管文檔指出當在樹節點上放置" DD對象"時,nodedrop被觸發,但該源似乎表明它仍然期待有效節點。

爲了實現從視圖到樹的拖放,我相信你將不得不初始化你自己的TreeDropZone來處理與樹不兼容的節點的DD項。

這個例子:http://dev.sencha.com/deploy/dev/examples/dd/dragdropzones.html顯示了類似的東西(儘管它是一個網格拖放的視圖),但是你可能必須使用一個TreeDropZone實例化,他們使用了一個Ext.dd.DropZone對象。

此外,請確保您的源視圖和目標樹共享相同的ddGroup - 雖然我認爲您提到他們這樣做。

我希望這對您有所幫助!