В настоящее время я работаю над редактируемой сеткой extjs. Код был частично скопирован из документации, чтобы понять, как правильно использовать этот тип сетки. Это код:
Ext.define('GestioneScadenza', {
extend: 'Ext.data.Model',
fields: ['codiceRamo', 'denominazione', {name: 'dataScadenza', type: 'date', dateFormat: 'd/m/Y'} ]
});
var gestioneScadenzaStore = Ext.create('Ext.data.Store', {
model: 'GestioneScadenza',
data: [
{ codiceRamo: 'Lisa', denominazione: 'lisa@simpsons.com', dataScadenza: '03/03/1999' },
{ codiceRamo: 'Bart', denominazione: 'bart@simpsons.com', dataScadenza: '03/03/1999' },
{ codiceRamo: 'Homer', denominazione: 'homer@simpsons.com', dataScadenza: '03/03/1999' },
{ codiceRamo: 'Marge', denominazione: 'marge@simpsons.com', dataScadenza: '03/03/1999' }
]
});
var gestioneScadenzaGrid = Ext.create('Ext.grid.Panel', {
store: gestioneScadenzaStore,
plugins: [
Ext.create('Ext.grid.plugin.RowEditing', {
clicksToEdit: 1
})
],
listeners:{
'beforeedit':function(editor){
editor.getEditor().floatingButtons.hide();
}},
columns: [
{
flex: 5,
text: getJsResource('tabRami.label.codiceRamo'),
// width: 200,
dataIndex: 'codiceRamo'
},
{
flex: 2,
text: getJsResource('tabRami.label.denominazione'),
// width: 150,
dataIndex: 'denominazione'
},
{
flex: 3,
text: getJsResource('tabRami.label.dataScadenza'),
xtype: 'datecolumn',
// width: 135,
dataIndex: 'dataScadenza',
editor: {
xtype: 'datefield',
allowBlank: false,
format: 'd/m/Y',
maxValue: Ext.Date.format(new Date(), 'd/m/Y')
}
}
]
});
Моя проблема с этим кодом в том, что он отображает только один столбец! На самом деле, другие столбцы отталкиваются от страницы, и мне приходится много прокручивать, чтобы достичь конца сетки. Кажется, проблема в гибкости. Фактически, если я добавлю значение flex только для последнего элемента, он будет правильно отображать столбцы, но последний будет очень сильно сдвинут в боковом направлении.
Какие-нибудь решения?