请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

gjsucs

金牌服务用户

11

主题

31

帖子

317

积分

金牌服务用户

积分
317
gjsucs
金牌服务用户   /  发表于:2020-9-28 15:39  /   查看:2207  /  回复:5
image.png190065917.png
像这样设置一行样式,隐藏掉,下边可以动态添加行,新添加行的每个单元格样式与上列一致。
我用getStyle(row,col-1) ,setStyle(row,col) 。如果属性不改变没问题,如果属性有变化比如只读属性。两行都会跟着变,如何解决?

5 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-9-28 18:30:13
沙发
抱歉,这句话我没明白什么意思:“我用getStyle(row,col-1) ,setStyle(row,col) 。如果属性不改变没问题,如果属性有变化比如只读属性。两行都会跟着变,如何解决?”
建议您提供一个能够重现问题的demo,以便与快速沟通清楚问题,我们也好通过demo来快速定位问题的原因。
回复 使用道具 举报
gjsucs
金牌服务用户   /  发表于:2020-9-29 08:37:11
板凳
想要的效果是 第二行还是黄色,第三行是红色

样式.html

2.89 KB, 下载次数: 31

回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-9-29 10:08:15
地板
image.png522402343.png
这句话的问题,这句话获得样式就是黄色的样式之后您又将黄色的样式改成了红色,那么所有有关黄色样式的单元格都会变成红色,这里style是一个jsobject是一个引用调用,而非传值调用。所以您如果改成红色那么所有的引用都会变成红色。
解决办法是用不同的style示例
这里new 一个新的style并设置成红色即可
回复 使用道具 举报
gjsucs
金牌服务用户   /  发表于:2020-9-29 15:06:32
5#
本帖最后由 gjsucs 于 2020-9-29 15:08 编辑

这只是一个例子,还有其他属性,比如字体、字号、对齐方式等,我可能只改其中一个,其他的不改,new一个以后每次还要把其他的属性赋值,这样比较麻烦,有没有简便的方式
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-9-29 17:40:47
6#
本帖最后由 ClarkPan 于 2020-9-29 17:43 编辑

这样的话建议用namedstyle,namedstyle原理类似于html样式的css样式表,可以存在继承关系
image.png513217772.png
https://demo.grapecity.com.cn/sp ... navigationNextSheethttps://demo.grapecity.com.cn/spreadjs/help/api/GC.Spread.Sheets.Style.html#parentName
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部