找回密码
 立即注册

QQ登录

只需一步,快速开始

micropole
初级会员   /  发表于:2021-10-9 17:50  /   查看:2596  /  回复:1
1金币
我的代码分如下几步:
1、设置单元格样式(主要是样式中的backColor和formatter属性,列中的单元格不一定都被设置样式),设置代码如下
1633771973(1).png963080444.png
2、对需要写保护的列设置Lock=true
1633772533(1).png346777648.png
3、设置Sheet的isProtected = true
1633772587(1).png693313903.png

我现在遇到的问题是,如果我不执行第一步,直接执行第二、三步的时候,对应的单元格是被写保护的,不能编辑的,但当我执行第一步,再接着第二、三步的时候,
对应的单元格如果样式在第一步中被修改的保护就失效了(允许被编辑),如果样式没有在第一步中修改的单元格保护还是有效的

请问这是什么情况,我该如何处理?

最佳答案

查看完整内容

您好, 样式是有优先级之分的,如下: 条件格式 > 单元格 > 行 > 列 > 表单 您设置了单元格样式时,可以检查下style.locked是否为false。 因为单元格样式优先级大于列样式, 所以即使列样式设置 locked 为true, 单元格仍是未锁定的,所以保护无效。 您可以根据需求调整不同层次的样式locked值 关于样式相关知识,具体请参考下方技术文章: https://gcdn.grapecity.com.cn/showtopic-78902-1-14.html

1 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-10-9 17:50:01
来自 2#
您好,
样式是有优先级之分的,如下:

条件格式 > 单元格 > 行 > 列 > 表单

您设置了单元格样式时,可以检查下style.locked是否为false。
因为单元格样式优先级大于列样式,
所以即使列样式设置 locked 为true,
单元格仍是未锁定的,所以保护无效。

您可以根据需求调整不同层次的样式locked值

关于样式相关知识,具体请参考下方技术文章:
https://gcdn.grapecity.com.cn/showtopic-78902-1-14.html
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部