Ext 구성 요소에 솔루션이 표시되지 않음

1632 단어 htmlext
프로젝트를 할 때 구성 요소가 표시되지 않는 상황을 자주 발견할 수 있습니다. 다음과 같은 몇 가지 방법을 시도할 수 있습니다. 1.Height를 검사하는 일반적인 상황에서는 구성 요소가 보이지 않거나 작은 줄만 보일 수 있습니다. 첫 번째로 해야 할 일은 이 구성 요소의 Height 속성을 현시적으로 설정하는 것입니다. 일반적인 상황에서는 표시됩니다.
2. tabpanel의 경우 만약 당신의 공간이 TabPanel에 놓여 있다면 주의해야 할 것은 내장된 구성 요소를 items에 직접 쓰는 것이다. 예를 들어
   new Ext.TabPanel({
        activeTab: 0,
        autoHeight: true,
        plain: true,
        tabPosition: 'top',
        border: true,
        defaults: {
            autoScroll: true
        },
        items: [zzPanel, hzPanel]
    });
이런 짓을 많이 해서는 안 된다.
new Ext.TabPanel({
        activeTab: 0,
        width: 600,
        height: 550,
        plain: true,
        tabPosition: 'top',
        border: false,
        defaults: {
            autoScroll: true
        },
        items: [{
            title: ResourceHelper.i18n.zz,
            items: [zzgrid],
            listeners: {
                activate: changeHandle
            }
        }, {
            id: 'hztab',
            title: ResourceHelper.i18n.hz,
            items: [hzgrid],
            listeners: {
                activate: changeHandle
            }
        }]
    });
 
이렇게 쓰면 activeTab에 대응하는tab의grid만 표시되고 다른tab의grid는 표시할 수 없습니다.(이 버그를 디버깅할 때 우연한 기회에 수정된activeTab의 값을 발견했습니다.)
이 경우,show () 를 사용하여tab의grid를 표시합니다.
 
3. 패널에grid가 끼워져 있고 이 패널에는 TabPanel이 끼워져 있습니다.
이 경우 두 번째 주의사항뿐만 아니라 주의해야 할 것은 이런 상황에서 쇼 () 만으로는 모든 컨트롤을 표시할 수 없다는 것이다.show () 만 사용하면 TabPanle의 직접 컨트롤 즉 패널을 표시할 수 있고, 패널에 끼워진grid도 표시할 수 없기 때문이다.
이때 패널의 doLayout () 방법을 사용해야 합니다.

좋은 웹페이지 즐겨찾기