2010-09-20 3 views
1

Я пытаюсь вставить дочернюю панель B (позиция 1) перед дочерней панелью A (позиция 0) в родительской панели. Это прекрасно работает, но когда я снова вставляю панель B (теперь в positon 0) после панели A (теперь в позиции 1), она не работает. Любые предложения будут ценны. Ниже приведен фрагмент кода, который я использую.ExtJS: Переключение панелей в родительской панели

......... .........

вар товар = parentPanel.items.items;

элементы [1] .el.insertBefore (items [0] .el);

parentPanel.doLayout();

..........................

вар изделия = parentPanel.items.items;

элементы [0] .el.insertAfter (items [1] .el);

parentPanel.doLayout();

...........................

............... .

Спасибо MS

ответ

1

массив элементы не меняется. Поэтому элементы [0] всегда будут Panel A, элементы [1] всегда будут Panel B - даже если вы вручную перемещаете HTML вокруг родительского контейнера.

5

Вы должны использовать родительский panel insert method вместо использования метода DOM для перемещения базовых элементов.

Например, чтобы вставить панель в положение 1 (панель B) перед группой в положении 0 (панель А), вы должны сделать это:

parentPanel.insert(0, parentPanel.getComponent(1)); 
Смежные вопросы