工作表实现交替背景色的两种方案
背景:用户在SpreadJS中使用表格(Table)时,可以选择套用表格样式,实现背景色交替出现的效果,如下所示:
但是存在一些业务情况,希望这种交替样式能够出现在整个工作表(Sheet)当中。这时。我们可以选择将整个工作表变成一个表格(Table)。但不少客户工作表中会存在其它内容,无法将整个工作表变成一个表格(Table)。此时,我们可以选择以下两种方案来实现交替北京色的需求。
1. 使用条件格式
使用条件格式去判断行索引的奇偶性,满足条件时,添加另外一种样式,其余行使用默认样式,核心代码如下:
let sheet = spread.getSheet(0)
let style1= new GC.Spread.Sheets.Style()
style1.backColor = '#e5efee'
let ranges =
// 方法1: 使用条件格式,删除或新增行时,样式随之变化,会对性能有一定影响。
sheet.conditionalFormats.addFormulaRule('=ISEVEN(ROW(A1))',style1,ranges)2. 遍历行索引,设置行背景。
sheet = spread.getSheet(1)
// 方法2:根据行索引去添加背景色,这种在新增行时,需要动态去调整样式,新增行列会有影响
function changeRowColor(){
for(let i=0; i<sheet.getRowCount();i++){
if(i % 2 != 0){
sheet.getCell(i,-1).setStyle(style1)
}
}
}
changeRowColor()两种方式的优缺点都已经写在代码中,详细示例可以参考demo:工作表中添加交替背景色
页:
[1]