找回密码
 立即注册

QQ登录

只需一步,快速开始

Rihanna的话筒

注册会员

6

主题

16

帖子

56

积分

注册会员

积分
56
Rihanna的话筒
注册会员   /  发表于:2025-1-7 15:24  /   查看:35  /  回复:4
2金币

要实现的功能是,用户右键点击一列的序号,右侧菜单点击自定义的一个command,走以下的逻辑
sheet.options.isProtected = false;
sheet.getCell(1,1).locked(true);
设置了第一列为锁定状态,但是表格里面没有锁定

4 个回复

倒序浏览
Rihanna的话筒
注册会员   /  发表于:昨天 15:33
沙发
我用以下方法去实现,会导致其他其他列的单元格的工具栏也是锁定的状态
let style = sheet.getDefaultStyle();
style.locked = false;
sheet.setDefaultStyle(style);

let range = new GC.Spread.Sheets.CellRange(sheet, -1, 0, -1, 2);
range.locked(true);

sheet.options.isProtected = true;
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:昨天 15:57
板凳
Rihanna的话筒 发表于 2025-1-7 15:33
我用以下方法去实现,会导致其他其他列的单元格的工具栏也是锁定的状态
let style = sheet.getDefaultStyl ...

您好,
根据您提供的代码进行测试,第一列和第二列是禁止编辑的,其余列不可编辑,即应该满足您的需求。
如果您那边测试结果不一致,猜测可能与其他代码产生了冲突。
建议提供一个可复现demo,我们调研看看原因。
回复 使用道具 举报
Rihanna的话筒
注册会员   /  发表于:昨天 16:22
地板
Lynn.Dou 发表于 2025-1-7 15:57
您好,
根据您提供的代码进行测试,第一列和第二列是禁止编辑的,其余列不可编辑,即应该满足您的需求。 ...

噢噢噢噢,确实与其他地方冲突了。那我现在如何去获取页面上已经设置了锁定的列呢?有这样的方法吗
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:7 小时前
5#
本帖最后由 Lynn.Dou 于 2025-1-8 10:29 编辑

可以使用getActualStyle方法获取单元格/区域的实际应用的样式,其中包含locked值。
示例代码:
  1. sheet.getActualStyle(-1,1).locked
复制代码
image.png47100829.png
image.png537871093.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部