Pages

搜尋此網誌

2008年8月16日 星期六

[ext2] Ext.grid.CheckColumn 使用方式

//除了再使用時 須宣告
var checkColumn = new Ext.grid.CheckColumn({
header: " ",
dataIndex: 'checkbox',
width: 55
});

//必須包括以下 function
Ext.grid.CheckColumn = function(config){
Ext.apply(this, config);
if(!this.id){
this.id = Ext.id();
}
this.renderer = this.renderer.createDelegate(this);
};

Ext.grid.CheckColumn.prototype ={
init : function(grid){
this.grid = grid;
this.grid.on('render', function(){
var view = this.grid.getView();
view.mainBody.on('mousedown', this.onMouseDown, this);
}, this);
},

onMouseDown : function(e, t){
if(t.className && t.className.indexOf('x-grid3-cc-'+this.id) != -1){
e.stopEvent();
var index = this.grid.getView().findRowIndex(t);
var record = this.grid.store.getAt(index);
record.set(this.dataIndex, !record.data[this.dataIndex]);
}
},

renderer : function(v, p, record){
p.css += ' x-grid3-check-col-td';
return '
';
}
};

另外須記得 在 Ext.grid.EditorGridPanel 加入plugins:checkColumn
不然會沒辦法 變更 checkColumn 狀態

//不然都不知道怎麼死的!!!!
張貼留言