找回密码
 立即注册

QQ登录

只需一步,快速开始

cv工程师

注册会员

1

主题

8

帖子

21

积分

注册会员

积分
21
  • 79

    金币

  • 1

    主题

  • 8

    帖子

最新发帖
cv工程师
注册会员   /  发表于:2022-8-19 16:57  /   查看:4013  /  回复:18
1金币
image.png437686767.png    

通过setStyle  或者 [size=0.9em]setDefaultStyle 去设置sheet的locked = true 不生效, getRange.locked(true)可以实现,但是数据量大,页面会很卡。
不生效的原因是什么或者有什么其他的办法可以设置整个sheet的单元格locked属性。
image.png396839599.png
image.png815402221.png

18 个回复

正序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-8-24 17:33:14
19#
不客气,有其他问题欢迎发新帖咨询
回复 使用道具 举报
brmxj
金牌服务用户   /  发表于:2022-8-24 17:25:06
18#
Richard.Ma 发表于 2022-8-24 17:15
是的,样式的优先级是这个没有错,

你现在具体是遇到的是什么问题,还是设置了style没有生效吗?没法解 ...

没事,不用了 换了个思路优化了一下, 没问题了, 多谢耐心答疑
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-8-24 17:15:16
17#
是的,样式的优先级是这个没有错,

你现在具体是遇到的是什么问题,还是设置了style没有生效吗?没法解决的话你可以打这个电话咱们沟通一下吧029-8833 1988 -6031,或者你留一下你这边的电话也行


回复 使用道具 举报
brmxj
金牌服务用户   /  发表于:2022-8-24 14:56:40
16#
Richard.Ma 发表于 2022-8-24 14:38
不管怎样设置,fromJson后肯定是以那个json中的设置为准的,你可以理解为这个就是打开了一个新的workbook或 ...

有个优先级: 单元格的样式 > 行列的样式 > 大于sheet表的样式 , 设置肯定都是返回之后设置的
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-8-24 14:38:53
15#
本帖最后由 Richard.Ma 于 2022-8-24 14:40 编辑

不管怎样设置,fromJson后肯定是以那个json中的设置为准的,你可以理解为这个就是打开了一个新的workbook或者worksheet

你需要做的是在fromJson后再去做相关设置

回复 使用道具 举报
brmxj
金牌服务用户   /  发表于:2022-8-24 14:36:59
14#
Richard.Ma 发表于 2022-8-24 14:29
内部的处理逻辑可能确实不一样,

前一个会去行列遍历,后一个行/列参数为-1的话,即是对整行/整列设置效 ...

我感觉 getRange(-1,-1,-1,-1) 这种设置方案 还是会被接口返回的json 样式覆盖
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-8-24 14:29:56
13#
内部的处理逻辑可能确实不一样,

前一个会去行列遍历,后一个行/列参数为-1的话,即是对整行/整列设置效率更高

你现在如果是要整体设置的话,用后一个就行,

如果确实是要对一个很大一片的区域进行设置的话,咱们再想其他的办法
回复 使用道具 举报
brmxj
金牌服务用户   /  发表于:2022-8-24 14:21:15
12#
Richard.Ma 发表于 2022-8-24 11:56
你是自己写for循环在遍历吗,这个测试确实会卡,
你就直接用getRange(-1,-1,-1,-1)来设置就行,这个内部的 ...

sheet.getRange(0, 0, sheet.getRowCount(), sheet.getColumnCount()).locked(true); 这种写法应该与getRange(-1,-1,-1,-1) 是一样的吧
回复 使用道具 举报
brmxj
金牌服务用户   /  发表于:2022-8-24 14:05:53
11#
Richard.Ma 发表于 2022-8-24 11:56
你是自己写for循环在遍历吗,这个测试确实会卡,
你就直接用getRange(-1,-1,-1,-1)来设置就行,这个内部的 ...

sheet.getRange(0, 0, sheet.getRowCount(), sheet.getColumnCount()).locked(true); 这种写法跟 getRange(-1,-1,-1,-1)应该是一样的吧
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-8-24 11:56:45
10#
你是自己写for循环在遍历吗,这个测试确实会卡,
你就直接用getRange(-1,-1,-1,-1)来设置就行,这个内部的设置逻辑和你这样直接循环应该不一样的。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部