3

このビュー(DetailsContainer、この質問のコードセクションのファーストクラス)には2つのアイテム(MetaDataPanel、Preview)がありますが、自動スクロールはMetaDataPanelでは機能しません(コードに従ってください)。したがって、MetaDataPanel内にいくつかのアイテムを配置すると、自動スクロールが機能しません... PS:MetaDataPanelのコンテンツが動的に生成され、このパネルに要素が追加されます...何か提案はありますか?

Ext.define('DP.view.DetailsContainer' ,{ 
id: 'DetailsContainer',
extend: 'Ext.Panel',
alias : 'widget.DetailsContainer',
collapsible: true,
// margins:'5 0 5 5',
split:true,
layout: {
    type: 'accordion',
    align: 'stretch',
    pack  : 'start'
},

initComponent: function() {


    Ext.apply(this, {

        items: [{
            xtype: 'MetaDataPanel',
            flex:1
        },{
            xtype: 'Preview',
            flex:2     
        }]
    });

    this.callParent(arguments);
}
});


Ext.define('DP.view.MetaDataPanel' ,{
id: 'MetaDataPanel',
extend: 'Ext.Panel',
alias : 'widget.MetaDataPanel',
title : 'MetaDati', 
layout: 'fit',
autoScroll:true, //TODO: autoscroll not working
initComponent: function() {
    Ext.apply(this, {
        items: [{
            xtype: 'component' ,
            html: 'Nessun File o Cartella selezionata. Selezionare un elemento per visualizzare i metadati!',
            margin: 5,
            style: {
                color: '#000000'
            }
        }]
    });
    this.callParent(arguments);
}
});
4

3 に答える 3

7

フィット レイアウトのコンテナーで autoScroll を指定しても意味がありません。子は常にコンテナのサイズに収まり、大きくなることはないため、スクロールすることはできません。内部コンポーネントに autoScroll が必要です。

于 2012-06-28T11:28:53.663 に答える
3

アコーディオンパネルがスクロールするのは意味がないと思います。代わりにすべきことは、内部コンポーネントをスクロールするように設定することです。その考えを反映するためにわずかに変更されたコードを見てください: http://jsfiddle.net/dbrin/jmHEj/

于 2012-06-27T18:03:06.180 に答える