日期:2014-05-16  浏览次数:20418 次

Extjs4 gridPanel 列按照百分比分配宽度

//下面红色部分设置属性值,看注释

var _store = Ext.create('Ext.data.Store', {

fields : ['name', 'name2','name3'],

proxy : {

type : 'ajax',

url : 'test!request.action',

reader : {

type : 'json',

root : 'data'

}

},

listeners : {

'load' : function(t, records, successful, eOpts) {

if (successful && records.length == 1

&& records[0].raw.state == -1) { ?根据后台返回异常状态,如果load加载错误,返回错误信息。

t.removeAll();

Ext.Msg.alert('异常', records[0].raw.exMsg);

}

}

}

});

?

Ext.create('Ext.grid.Panel', {

columnLines : true,

store : _store,

border : false,

bodyBorder : false,

lazyLoad : true,

columns :?[new Ext.grid.RowNumberer(), {

header : '列1',

dataIndex : 'name',

sortable : false,

flex : 4.5?//占比9/20

}, {

header : '列2',

dataIndex : 'name2',

sortable : false,

flex : 4.5?//占比9/20

}, {

text : '列三',

dataIndex : 'name3',

sortable : false,

flex : 1, ? //占比1/10

renderer : function(v, m, r) {

return '列3(占1/10)';

}

}];,

loadMask : true,

forceFit : true, ? ?//按照比例分配宽度属性。总数为10

});