找回密码
 立即注册

QQ登录

只需一步,快速开始

Ellia.Duan SpreadJS 开发认证
超级版主   /  发表于:2023-8-24 10:45  /   查看:2079  /  回复:2
本帖最后由 Ellia.Duan 于 2023-8-24 10:49 编辑

关于批注的相关内容可以查看此学习指南:

https://demo.grapecity.com.cn/sp ... asic-comment/purejs
本篇文章介绍一下,批注保护
下面创建了四个批注
  1.         let spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), {sheetCount: 1});
  2.         let  sheet = spread.getSheet(0);
  3.         sheet.suspendPaint();
  4.         sheet.addSpan(1, 1, 1, 4);
  5.         sheet.setValue(1, 1, "第二个批注");
  6.         sheet.comments.add(1, 1, "批注1!").displayMode(GC.Spread.Sheets.Comments.DisplayMode.alwaysShown);


  7.         sheet.addSpan(3, 1, 1, 4);
  8.         sheet.setValue(3, 1, "第二个批注");
  9.         sheet.comments.add(3, 1, "批注2!").displayMode(GC.Spread.Sheets.Comments.DisplayMode.alwaysShown);

  10.         sheet.addSpan(6, 1, 1, 4);
  11.         sheet.setValue(6, 1, "第三个批注");
  12.         sheet.comments.add(6, 1, "批注3!").displayMode(GC.Spread.Sheets.Comments.DisplayMode.alwaysShown);

  13.         sheet.addSpan(12, 1, 1, 4);
  14.         sheet.setValue(12, 1, "第四个批注");
  15.         sheet.comments.add(12, 1, "批注4!").displayMode(GC.Spread.Sheets.Comments.DisplayMode.alwaysShown);
  16.         let comment1 = sheet.comments.get(1, 1)
  17.         let comment2 = sheet.comments.get(3, 1)
  18.         let comment3 = sheet.comments.get(6, 1)
  19.         let comment4 = sheet.comments.get(12, 1)
复制代码
如果你不想要用户通过用户界面来改变批注,你可以使用 locked()来锁定它,此时是不可以拖拽且修改批注内容的。 不过在锁定批注之前,你需要锁定表单。
如果你仅仅是不想要用户编辑文本,你可以使用 lockText 方法来锁定文本,此时批注可以拖拽。
下面的代码分别介绍了 四种情况
分别是
  • comment1可以修改文字,不能拖拽;
  • comment2可以拖拽并且修改文字;
  • comment3不可以修改文字,但是可以拖拽;
  • comment4不可以修改文字,不可以拖拽

注意comment2 两个属性都要设置为false ,不可以只设置locked(),应该此时属于表单保护状态,如果不主动置为false ,默认为true 。
所以comment4的设置locked()可写可不写。注释掉comment4的相关代码,也是不可编辑状态
  1.         sheet.options.isProtected = true;
  2.         //comment1可以修改文字,不能拖拽
  3.         comment1.locked(true);
  4.         comment1.lockText(false);
  5.         // comment2可以拖拽并且修改文字
  6.         comment2.locked(false);
  7.         comment2.lockText(false);
  8.         // comment3不可以修改文字,但是可以拖拽
  9.         comment3.locked(false);
  10.         comment3.lockText(true);
  11.         // comment4不可以修改文字,不可以拖拽
  12.         comment4.locked(true);
复制代码





评分

参与人数 1满意度 +5 收起 理由
uuuuuu + 5

查看全部评分

2 个回复

倒序浏览
uuuuuu
注册会员   /  发表于:2023-10-31 15:06:37
沙发
谢谢您的解答
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-10-31 15:07:21
板凳
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部