SpreadJS帮助手册(四):表单相关


问:可以设置表单的行数列数吗/strong>

可以通过相关API来设置表单的行数、列数,默认情况表单会有200行、20列。例如:sheet.setRowCount(20, GC.Spread.Sheets.SheetArea.viewport);设置了表单行数为20行。

问:如何在新增行的时候复制上一行的样式/strong>

可以使用getActualStyle()获取上一行的样式,在使用setStyle()给新增行设置样式,参考代码:

sheet.addRows(intIndex,1);      for(var i=0;i<sheet.getColumnCount();i++){        var actualStyle = sheet.getActualStyle(intIndex-1,i);        sheet.setStyle(intIndex,i,actualStyle);      }

问:如何解决调用setActiveSheet方法后当前表单位置未移动的问题/strong>

可通过获取到sheet的index后调用startSheetIndex方法来定位。

问:如何处理 错“将带来重复的合并效果”/strong>

确定一下粘贴范围是不是已经存在合并单元格了,如果是,那么粘贴过来会有重复合并的效果。

举个例子:有两个合并单元格(0,0,2,2)、(2,1,2,2)。将(0,0,2,2)copyto至 2,1(toRow:2,toColumn:1)就会出现重复合并的情况,因为2,1,2,2上已经存在了一个合并单元格,该合并单元格与将要粘贴的区域存在冲突。

问:如何判断当前选中的单元格处于可显示区域/strong>

用TopRowChanged和LeftColumnChanged事件进行判断

问:点击新增按钮会触发什么事件/strong>

SheetTabClick事件中可以通过判断来获取 ,例如:

spread.bind(GC.Spread.Sheets.Events.SheetTabClick, function (e, info) {        alert("Index (" + info.sheetTabIndex + ")");});

如果是,点击新增Sheet页alert的结果是-1。

问:如何获取一个单元格中的选中数据/strong>

SpreadJS产品本身的接口是获取不到的,HTML中可以通过window.getSelection()来获取鼠标选中的范围的内容,

问:(表单保护)如何设置单元格锁定/strong>

具体我们分三种情况详细说明一下。

这种情况比较简单只要设置sheet.setIsProtected(true);就可以实现效果,因为sheet默认是被锁定的,我们只需要设置保护即可。

var defaultStyle = new GcSpread.Sheets.Style();defaultStyle.locked = false;activeSheet.setDefaultStyle(defaultStyle, GcSpread.Sheets.SheetArea.viewport);var style = new GcSpread.Sheets.Style();style.locked = true;style.backColor = "red";activeSheet.setStyle(0, -1, style);activeSheet.setIsProtected(true);

以上三种情况就是我们所能遇到的所有情况了。只要理解了表单保护的机制,设置起来是很简单的。只要记得最后一定要setIsProtected(true)!


*想要获得 SpreadJS 更多资源或正版授权的朋友,可以咨询【客服】了解哦~

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年9月25日
下一篇 2019年9月25日

相关推荐

发表回复

登录后才能评论