用Ext.override重写控件属性

一些通用的控件属性,可以用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'
		});



你可能感兴趣的:(用Ext.override重写控件属性)