ExtJs面板 - 添加动态组件

时间:2012-08-23 09:56:19

标签: dynamic extjs window components panel

我在窗户内有一个带面板的窗口。我动态地向面板添加组件。这些组件采用“hbox”布局,因此它们是水平排列的。单击按钮,我将在“hbox”布局中向面板添加另一行类似组件。这里的问题是我想在第一行下面添加第二行,但是下面的代码将组件添加到面板的顶部。

panel.add(items);  #items is the group of comboboxes in hbox layout
panel.doLayout();

有什么想法可以解决这个问题吗?这样我就可以在第一行下面添加第二行组件。

Extjs Version是3.4

2 个答案:

答案 0 :(得分:13)

我找到了问题的原因。

原因:当我们向面板添加具有相同“ id ”的组件时,新添加的组件将添加到面板顶部。

修复:在向面板添加相同组件时,使用“ itemId ”代替“ id ”。

希望这对某人有用。

答案 1 :(得分:8)

您可以使用insert方法来指定要放置组件的面板项的索引:

var index = panel.items.length;
panel.insert(index, items);

// or if it always going to be the second item
panel.insert(1, items);

Here it is in the docs.