タブパネルがあります。タブには、ツールバーと 3 つの項目 [フィールドセット、グリッドパネル、および別のフィールドセット (またはいくつかのボタン)] を含むパネルがあります。スクロールバーを表示するグリッドパネルを取得できません。グリッドパネルの最大高さ/最小高さを設定した場合にのみ機能します。
また、コンテナ内に gridpanel をラップしてみました。運がない。例では、フィット レイアウトを使用します。「アンカー」レイアウトを試し、アンカー: '100% 50%' を gridpanel に割り当てて、ブラウザのサイズを変更するとサイズが変更されることを期待しました。運がない。
または、グリッドパネルがタブ内の唯一のアイテムである場合、自動スクロールが機能します。そのため、別のパネル内にあるときに表示され、自動スクロール/サイズ変更は機能しません。
ここで何か見逃しましたか?
Ext.application({
name: 'MyApp',
launch: function () {
// create the data store
var d = ['company', 100];
var myData = [];
for (var i = 0; i < 50; i++) {
myData[i] = d;
}
var store = Ext.create('Ext.data.ArrayStore', {
fields: [{
name: 'company'
}, {
name: 'price',
type: 'float'
}],
data: myData
});
Ext.create("Ext.container.Viewport", {
layout: {
type: 'border'
},
items: [{
xtype: 'toolbar',
id: 'headerbar',
region: 'north',
height: 30
}, {
xtype: 'toolbar',
id: 'menubar',
region: 'north',
height: 30
}, {
xtype: 'tabpanel',
itemId: 'maintabpanel',
activeTab: 0,
region: 'center',
plain: true,
margins: '5 5 5 5',
layout: 'fit',
items: [{
closable: false,
title: 'Tab',
margins: '0 0 0 0',
items: [{
xtype: 'panel',
title: 'Panel',
layout: 'fit',
tools: [{
type: 'help',
tooltip: 'Help'
}, {
type: 'close',
tooltip: 'Close'
}],
items: [{
xtype: 'fieldset',
title: 'Field Set',
layout: 'hbox',
items: [{
xtype: 'textfield',
fieldLabel: 'Input'
}]
}, {
xtype: 'gridpanel',
autoScroll: true,
store: store,
columns: [{
text: 'Company',
flex: 1,
sortable: true,
dataIndex: 'company'
}, {
text: 'Price',
flex: 1,
sortable: true,
dataIndex: 'price'
}],
viewConfig: {
autoFit: true
}
}, {
xtype: 'fieldset',
title: 'Field Set 2',
layout: 'hbox',
items: [{
xtype: 'textfield',
fieldLabel: 'Output'
}]
}]
}]
}]
}, {
xtype: 'box',
id: 'footer',
region: 'south',
html: '<h1> Copyright 2012</h1>',
height: 30
}]
});
}
});