您好!可以通过RangeGroupStateChanging事件监听被折叠的分组中每行的行高,记录这些行高,折叠后也能够了解到被折叠分组中的各行行高。之后,通过copyTo复制折叠分组中的行粘贴后,根据保存的折叠分组行高设置即可。
可以参考如下代码:
- sheet.bind(GC.Spread.Sheets.Events.RangeGroupStateChanging, function(e, args) {
- console.log('range group state changing, args: ', args);
- // 判断行分组或列分组
- var outline = args.isRowGroup ? sheet.rowOutlines : sheet.columnOutlines;
- // 根据分组index和level获取具体分组信息
- var outlineInfo = outline.find(args.index, args.level);
- var rowInfo = [];
- // 遍历分组内各行,
- for (var i = outlineInfo.start; i <= outlineInfo.end; i++) {
- rowInfo.push({
- row: args.isRowGroup ? i : null,
- col: args.isRowGroup ? null : i,
- height: args.isRowGroup ? sheet.getRowHeight(i) : null,
- width: args.isRowGroup ? null : sheet.getColumnWidth()
- });
- }
- console.log('rowInfo: ', rowInfo);
- });
复制代码 |