2012-08-23 4 views
7

창 내부에 패널이있는 창이 있습니다. 패널에 동적으로 구성 요소를 추가합니다. 이 구성 요소는 'hbox'레이아웃에있어 가로로 배열됩니다. 버튼을 클릭하면 패널에 'hbox'레이아웃에 비슷한 구성 요소 행이 하나 더 추가됩니다. 여기서 문제는 첫 번째 행 아래에 두 번째 행을 추가하려고하지만 다음 코드는 해당 구성 요소를 패널의 맨 위에 추가한다는 것입니다.ExtJs 패널 - 동적 구성 요소 추가

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

이 문제를 해결하기위한 아이디어는 무엇입니까? 그래서 첫 번째 행 아래에 두 번째 행의 구성 요소를 추가 할 수 있습니다.

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.

답변

12

내가 원인을 발견

는 ExtJS 버전 3.4

7

당신은에서 구성 요소를 넣어 원하는 패널 항목의 인덱스를 지정하는 대신 insert 방법을 사용할 수있다 문제의

원인은 : 우리는 패널 같은 'ID'로 구성 요소를 추가 할 때 다음 새로 추가 된 구성 요소는 패널의 상단에 추가 얻을 것이다.

수정 : 사용 '해당 itemId'대신 'ID'패널에 동일한 구성 요소를 추가하는 동안.

희망이 있으면 도움이 될 것입니다.

+1

내 질문에 대한 귀하의 대답은 정확합니다. 하지만 여전히 내 프레임 워크에서 그것을 달성하지 못했습니다. 내 프레임 워크로 확인해야합니다. 고마워. – AJJ