我简单实现了一下,你参考一下,原demo中改了一个事件,
代码示例:
- spread.bind(GC.Spread.Sheets.Events.ButtonClicked, function (e, info) {
- console.log(info);
- spread.suspendPaint();
- sheet.clearSelection();
- var row = info.row;
- var col = info.col;
- var checkBox = sheet.getCellType(row, col);
- if(checkBoxArr.indexOf(checkBox) > -1){
- var sheetRowCount = sheet.getRowCount();
- var sheetColCount = sheet.getColumnCount();
- for (var i = 0; i < sheetRowCount; i++) {
- for (var j = 0; j < sheetColCount; j++){
- var cellType = sheet.getCellType(i, j);
- if(checkBoxArr.indexOf(cellType) > -1){
- var val = sheet.getValue(i, j);
- if(val){
- sheet.addSelection(i, -1, 1, 1);
- sheet.addSelection(-1, j, 1, 1);
- }
- }
- }
- }
- }
- spread.resumePaint();
- });
复制代码
附件中是已经改过的demo。
|