找回密码
 立即注册

QQ登录

只需一步,快速开始

chaoren

初级会员

16

主题

67

帖子

205

积分

初级会员

积分
205
chaoren
初级会员   /  发表于:2018-11-5 11:36  /   查看:2884  /  回复:7
spreadjs可以提供类似excel右键菜单设置筛选的功能吗

7 个回复

倒序浏览
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-11-5 14:41:17
沙发
可以实现,与设计器的右键筛选效果类似。

示例代码:

  1. var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), { sheetCount : 1 });

  2.         var contextMenu = spread.contextMenu.menuData;

  3.         var filter = {
  4.             command :"gc.spread.contextMenu.filter",
  5.             name:"designer.filter",
  6.             text:"筛选",
  7.             workArea:"viewportcorner"
  8.         };

  9.         contextMenu.push(filter);
复制代码

回复 使用道具 举报
chaoren
初级会员   /  发表于:2018-11-5 15:01:33
板凳
KevinChen 发表于 2018-11-5 14:41
可以实现,与设计器的右键筛选效果类似。

示例代码:

好的,谢谢,另外我还想问下,spread有提供类似excel image.png762802428.png 这样选择单元格计数的功能,如果没有,我想问下,如何判断一个单元格之前有被选中过
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-11-5 17:56:05
地板
获取选中区域可以用getSelections 方法来获取一个选中区域的数组,API如下:

http://help.grapecity.com/spread ... ~getSelections.html

判断是否选中过是什么意思?
回复 使用道具 举报
chaoren
初级会员   /  发表于:2018-11-6 09:12:43
5#
KevinChen 发表于 2018-11-5 17:56
获取选中区域可以用getSelections 方法来获取一个选中区域的数组,API如下:

http://help.grapecity.com ...

情况是这样的,比如我第一次选中这2个单元格计算出所需要的数据 image.png265989684.png ,那么第二次我在已经选中的这2个数据进行二次选中,那么得到的选中区域却是2条同样的单元格数,计算就会出现问题 image.png100606993.png ,获取变成4个计数,这并不是我需要的结果,我需要的还是得到2个计数,并不会对于选中过的进行参与再次计算
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-11-6 10:51:10
6#
您好,有两个方案可以供你参考,

1、设置sheet的选择策略为单range选择,这样每次选择只能选中一个range,第二次选择时会把之前选中的区域清掉,设置方法为:
  1. sheet.selectionPolicy(GC.Spread.Sheets.SelectionPolicy.range);
复制代码


2、在SelectionChanged事件中可以获取到已经选中的range,使用range的contains与containsRange两个方法来判断已选中区域是否包含某个单元格或区域,然后进行反选即可。range API地址:
http://help.grapecity.com/spread ... d.Sheets.Range.html
回复 使用道具 举报
chaoren
初级会员   /  发表于:2018-11-7 13:52:18
7#
KevinChen 发表于 2018-11-6 10:51
您好,有两个方案可以供你参考,

1、设置sheet的选择策略为单range选择,这样每次选择只能选中一个range ...

好的,谢谢
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-11-7 15:56:36
8#
不客气,很高兴帮你解决问题,本帖我结帖了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部