表格视图——Ext.grid.GridView

Ext的表格控件都遵守MVC模型,Ext.data.Store可看做Model模型,Ext.grid.GridPanel中设置的各种监听器可看做Controller控制器,而Ext.grid.GridView对应的就是View视图。通常情况下,我们不需要创建Ext.grid.GridView的实例,Ext.grid.GridPanel会自动生成对应的实例,使用默认的样式将表格显示到页面上。当我们要操作Ext.grid.GridView的属性时,可以通过Ext.grid.GridPanel.getView()来获取当前表格使用的视图实例。

代码:

// 滚动到表格的顶部

Ext.get("gridview-scroll-to-top").on("click",function() {

grid1.getView().scrollToTop();

});

 

Ext.get("gridview-focus-cell").on("click",function() {

// 将焦点移到第3行第3个单元格

grid1.getView().focusCell(2,2);

// 获取第3行第3个单元格

var cell01 =grid1.getView().getCell(2,2);

// 设置第一个单元格的背景

cell01.style.backgroundColor = 'red';

alert(cell01.innerText);

});

显示效果:

 

从上面可以看出,与GridView相关的操作都集中在视图的显示功能部分。如果我们要对表格的显示效果进行调整,可以通过GridView进行设置,但是grid.getView()必须是创建完Ext.grid.GridPanel之后才能调用。如果我们希望在创建GridView时设置一些初始化参数,可以使用Ext.grid.GridPanelviewConfig参数,如下所示:

var grid1 = newExt.grid.GridPanel({

title : '员工信息',

renderTo : 'grid1',

cm : cm,

store : store,

width : 700,

height : 120,

enableColumnMove : false,

enableColumnResize : true,

loadMask : true,

viewConfig:{

forceFit:true, // 表格自动延伸每列的宽度,使之填满整个表格。

getRowClass:function(record,rowIndex,p,ds){

if (rowIndex %2 == 0) {

return'oushu-row-color';

}

return'jishu-row-color';

},

columnsText:"显示的列",

scrollOffset:30,//表格右侧为滚动条预留的宽度

sortAscText:"升序",

sortDescText:"降序"

},

autoExpandColumn : 'descn',

//sm:sm,

sm:newExt.grid.RowSelectionModel({

singleSelect:true

})

});

 

显示效果:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值