我有一个setup其中标签预计将基于用户从左面板树中选择一个项目加载。我的目标是根据用户选择只加载相关项目到特定的选项卡。ExtJs添加面板作为标签项
第一次,我能够加入项目如下:
var tab = tabs1.getItem('Orders');
tab.remove(0);
tab.add(pane33);
tab.doLayout();
但是,当用户再次选择该项目时,面板项目已被移除,并出现了错误的(c.getPositionEl().dom is undefined
)。
错误是由于该项目被删除或销毁。似乎没有选项可以替换选项卡项目,或刷新/重新加载面板。
如何处理?
谢谢。
您的建议已接近,但问题依然存在。因为,当我需要在任何时候只显示一个特定的面板,而tab.hide()隐藏所有的面板,但我找不到一种方法只显示选定的面板或网格。例如,tab.show(ProductTypesEditorGrid);显示所有隐藏的面板。 – Natkeeran 2010-03-09 17:07:49
您可以直接显示/隐藏组件,如editorGrid.show()(如果有引用)或Ext.getCmp('component-id')。show() – 2010-03-09 18:01:10
@bmoeskau,请问您可以帮忙吗?我无法使Ext.id()正常工作。当我删除东西时,我也无法让autoDestroy正常工作。我读过一些地方,我可能不得不将布局更改为边界布局以外的布局,因为两次添加组件不允许使用边框布局。 http://stackoverflow.com/questions/18630245/extjs-4-replace-two-components-in-viewport-items-array-after-button-click – MacGyver 2013-09-17 12:43:28