找回密码
 立即注册

QQ登录

只需一步,快速开始

主音吉他手

初级会员

25

主题

105

帖子

292

积分

初级会员

积分
292
主音吉他手
初级会员   /  发表于:2024-10-16 23:31  /   查看:257  /  回复:5

const menuDatas = spread.value.contextMenu.menuData;
  const newMenuData = [];
  menuDatas.forEach(function (item) {
    if (
      item.name === 'gc.spread.contextMenu.hideColumns' ||
      item.name === 'gc.spread.contextMenu.hideRows' ||
      item.name === 'gc.spread.contextMenu.unhideColumns' ||
      item.name === 'gc.spread.contextMenu.unhideRows' ||
      item.name === 'contextMenuUnhideSheet' ||
      item.name === 'gc.spread.contextMenu.hideSheet'
    ) {
      return;
    }
    newMenuData.push(item);
  });
  // 将新数组赋予spread的右键菜单属性
  spread.value.contextMenu.menuData = newMenuData;

需要隐藏右键行、列的隐藏和取消隐藏功能
这段代码好像不起作用了,右键菜单也没有隐藏掉。


5 个回复

倒序浏览
Wilson.Zhang
超级版主   /  发表于:2024-10-17 08:47:32
沙发
您好!如果您代码中的spread变量引用的是Workbook对象,那么,需要将spread.value.contextMenu.menuData修改为spread.contextMenu.menuData。因为,contextMenu是Workbook对象的属性,如下图所示。

1729125939328.png588537292.png

可以参考官网API文档了解详情:
Workbook:contextMenu--https://demo.grapecity.com.cn/spreadjs/help/api/classes/GC.Spread.Sheets.Workbook#contextmenu
回复 使用道具 举报
主音吉他手
初级会员   /  发表于:2024-10-17 10:20:45
板凳
本帖最后由 主音吉他手 于 2024-10-17 10:35 编辑
Wilson.Zhang 发表于 2024-10-17 08:47
您好!如果您代码中的spread变量引用的是Workbook对象,那么,需要将spread.value.contextMenu.menuData修 ...

spread.value = markRaw(value.getWorkbook());
是这样的,能获取到数据,这边不生效的意思是新赋值数组后,去掉了隐藏和取消隐藏,但是表格右键打开的时候还在
截屏2024-10-17 10.31.18.png
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-10-17 14:18:13
地板
主音吉他手 发表于 2024-10-17 10:20
spread.value = markRaw(value.getWorkbook());
是这样的,能获取到数据,这边不生效的意思是新赋值数组 ...

我们在16.1.2版本参考您提供的代码片段测试,未能复现问题,如下动图所示:
16.1.2右键菜单取消部分选项.gif

我们将demo附上,您可以运行测试下。或者您方便的话,可以提供一个能够复现问题的可运行demo,考虑到私密性,您可以不用携带业务数据和其他业务代码,仅复现问题现象即可。

取消右键菜单中部分选项.html

4.7 KB, 下载次数: 11

回复 使用道具 举报
主音吉他手
初级会员   /  发表于:2024-10-17 17:49:36
5#
Wilson.Zhang 发表于 2024-10-17 14:18
我们在16.1.2版本参考您提供的代码片段测试,未能复现问题,如下动图所示:

可以了,还是用法的区别,以前我用spread.value.contextMenu.menuData是没问题的,不知道突然就失效了
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-10-18 08:47:06
6#
主音吉他手 发表于 2024-10-17 17:49
可以了,还是用法的区别,以前我用spread.value.contextMenu.menuData是没问题的,不知道突然就失效了

解决就好,那就结帖了。如有新问题,欢迎发新帖沟通。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部