选中某个区域,最前位置的单元格背景色是白色的,而其他单元格背景色是灰色的,这个现象正常。在前述使用了CellClick事件的情况下,要统一选中行所有单元格的背景色,思路如下:
1. 从CellClick事件中的sheetArea参数为2时,即点击的是行头,此时工作表中已经选中了改行所有单元格形成选中区域;
2. 通过Worksheet:getSelections()获取当前选中区域的信息,可以了解到选中的列数;
3. 此时已经了解到了选中区域的行索引和跨越列数,可通过Worksheet:getRange()获取区域,对区域调用setStyle()设置样式。
代码如下:
- sheet.unbind(GC.Spread.Sheets.Events.CellClick);
- sheet.bind(GC.Spread.Sheets.Events.CellClick, function(e, args) {
- if (args.sheetArea === 2) {
- var selection = sheet.getSelections()[0];
- var style = new GC.Spread.Sheets.Style();
- style.backColor = "blue";
- sheet.getRange(selection.row, 0, selection.rowCount, selection.colCount).setStyle(style);
- }
- });
复制代码
|