我有一棵树,用户可以在其中拖放分支。现在,这一切都很好,但我需要能够以编程方式移动分支。我需要模拟剪切和粘贴(我将让用户使用按钮代替Ctrl - X和V)有没有人有我应该从哪里开始的想法?EXTSJS:treepanel以编程方式移动分支
0
A
回答
0
我从来没有玩过这种方法,所以我不能真正给你一个完整的解决方案,但TreePanel类有一个movenode方法,具有以下参数...树树,节点节点,节点oldParent,节点newParent,号码索引
也有与此方法相关的事件。希望这可以帮助。
编辑 - 我读的API太快,那些事件。我认为可以手动执行此操作的唯一方法是使用appendChild和removeChild方法。
1
好吧,我找到了解决方案,它结束了是真的,真的很简单:
var child = tree.getSelectionModel().getSelectedNodes();
var parent = tree.getNodeById('ABC123');
parent.appendChild(child);
它甚至会自动地从原来的点删除节点,它甚至移动的移动节点的任何子女。
请注意,此时只能在一个节点上工作(即使它正在使用selectedNodes),我会在稍后发布更实质的内容。
1
这是一次剪切和粘贴,可以同时用于多个节点。该版本还会隐藏任何已被“剪切”的节点,并在粘贴之前不会再显示它们。在粘贴期间它只会使用第一个节点,其他所有节点都将被忽略。
var Children = new Array();
function CutChildren(){
Children = tree.getSelectionModel().getSelectedNodes();
var limit = Children.length;
for (count =0; count < limit; count++){
Children[count].getUI().hide();
}
}
function PasteChildren(){
var selected = new Array();
selected = tree.getSelectionModel().getSelectedNodes();
var limit = Children.length;
for (count =0; count < limit; count++){
selected[0].appendChild(Children[count]);
Children[count].getUI().show();
if (count > 100){
break;}
}
}
相关问题
- 1. 以编程方式删除TFS分支
- 2. 以编程方式移动鼠标
- 3. 以编程方式移动FormulaFieldDefinition对象
- 4. Magento - 以编程方式移动类别
- 5. 以编程方式移动UIImageView框架
- 6. 如何以编程方式移动GWT HorizontalSplitPanel的拆分器?
- 7. 如何以绝对布局以编程方式移动按钮
- 8. 以编程方式移动一批文件的安全方法?
- 9. 是否可以通过编程方式滚动(移动)pdf?
- 10. 以编程方式滚动窗口移动窗口
- 11. 以编程方式移除焦点?
- 12. 以编程方式移除uiview by uibutton
- 13. jQuery Treeview:以编程方式打开分支
- 14. 以编程方式重命名TFS分支c#(TFS2017)
- 15. 以编程方式更改当前分支
- 16. 以编程方式编码UIButton行动
- 17. 如何以编程方式打开引导移动导航栏?
- 18. 画线并以编程方式移动它
- 19. 如何以编程方式移动Windows任务栏?
- 20. JavaFX ScrollPane以编程方式移动视口 - 居中内容
- 21. OpenLayers 2 - 以编程方式移动顶点
- 22. Dojo DnD以编程方式移动节点
- 23. Axapta:是否有可能以编程方式移动AOT节点?
- 24. Mac OS X:CGGetLastMouseDelta并以编程方式移动鼠标
- 25. 以编程方式将光标移动到TextBlock
- 26. 如何以编程方式解决15(移动数字)难题?
- 27. 如何以编程方式移动Flex 3 AdvancedDataGrid中的项目?
- 28. 如何以编程方式移动到下一张幻灯片?
- 29. 无法以编程方式在xib中移动UIlabel
- 30. 我该如何在android中以编程方式移动视图?
我正在寻找API,我只能找到一个moveNode事件,我没有看到一个方法。 – Limey 2010-07-23 18:55:55
是的,你是对的,我很抱歉。你需要使用appendChild和removeChild方法。 – SBUJOLD 2010-07-26 12:48:45