一些通用的控件属性,可以用Ext.override重写并放在公共文件中,这样所有引用此公共文件的页面的控件,将自动继承这些属性.
例如:需要让所有Grid的行号在翻页后连续递增并且其宽度自动设为30,则可在公共文件中将Ext.grid.RowNumberer重写如下:
Ext.override(Ext.grid.RowNumberer, {
width: 30,
renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) {
return store.lastOptions.params.start + rowIndex + 1;
}
});
/**
* 重写列头的属性
*/
Ext.override(Ext.grid.column.Column, {
align : 'center',
menuDisabled : false,
hideable : false,
initComponent : function() {
var me = this;
Ext.apply(me, {
tooltip : Ext.String.htmlEncode(me.text)
});
me.callParent();
}
});
/**
* 重写树列表的对齐属性,由于修改gridColumn而受到影响
*/
Ext.override(Ext.tree.Column, {
align : 'left'
});
/**
* 重写数字列的属性
*/
Ext.override(Ext.grid.column.Number, {
format : '0.00',
align : 'right'
});