找回密码
 立即注册

QQ登录

只需一步,快速开始

hutao2023

注册会员

1

主题

3

帖子

12

积分

注册会员

积分
12
  • 35

    金币

  • 1

    主题

  • 3

    帖子

最新发帖

[处理中] Grid内嵌Chart

hutao2023
注册会员   /  发表于:2023-11-3 16:14  /   查看:2218  /  回复:5
页面加载读取的Excel后,能在页面显示的sheet里添加Chart吗

5 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-11-3 16:49:39
沙发
spreadjs可以的,我听你说的产品应该也是我们的spreadjs控件吧。wijmo要做到这个很麻烦。

你是刚刚才开始评估吗
回复 使用道具 举报
hutao2023
注册会员   /  发表于:2023-11-6 09:58:33
板凳
Richard.Ma 发表于 2023-11-3 16:49
spreadjs可以的,我听你说的产品应该也是我们的spreadjs控件吧。wijmo要做到这个很麻烦。

你是刚刚才开 ...

不好意思,回复晚了,我确认了一下,不用sheet里面内嵌图表了。
现有以下问题需要确认一下
1.我用itemFormatter作成一个下拉框后,更改下拉框的初始值,然后点击其它单元格进入编辑模式,此时下拉框的值又会回到初始值,我该如果避免进入编辑模式时值会更改
2.给有下拉框的单元格添加一个change事件,拖动页面滚动条让这个单元格不显示在画面上时,添加的事件会提示无效,是要在添加事件前判断该单元格的visible属性是否为true吗
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-11-6 14:52:55
地板
1.itemFormatter做下拉框是怎么做的呢,grid可以直接设置Combobox做下拉框的。并不需要用itemFormatter,而且itemFormatter一般也是用来做显示效果的自定义。
https://demo.grapecity.com.cn/wi ... ustomEditors/purejs
下拉框可以参考这里


2.我也不确定你是如何添加的事件。我建议这两个问题你统一上传一个简单的demo上来,我帮你看看

回复 使用道具 举报
hutao2023
注册会员   /  发表于:2023-11-6 15:43:04
5#
Richard.Ma 发表于 2023-11-6 14:52
1.itemFormatter做下拉框是怎么做的呢,grid可以直接设置Combobox做下拉框的。并不需要用itemFormatter,而 ...

1.我看sample里面好像做下拉框只针对整行或整列?我需要的是对excel里面的某个单元格做下拉框。
2.公司用的内部网络,demo上传不了。代码如下:
this.flex.itemFormatter = (panel,r,c,cell) => {
  if (panel.cellType === 1) {
    // 设置下拉框
    if(r === 18 && c === 0) {
      cell.innerHTML = '<select><option></option><option>1</option></select>' + cell.innerHTML;
     var cb = cell.firstChild;
     if (cb.visible === true) {
       cb.addEventListener('change', e => {
         this.flex.beginUpdate();
         this.flex.setCellData(r,c,cb.value);
         this.flex.endUpdate();
       });
     }
    }
  }
}
另外,在以上的代码中,1的问题还没解决,另外产生了以下的问题:
1.如果我下拉框更换值之后,多点几次下拉框,然后定位到其他单元格内,下拉框会消失,debug发现visible这个属性也消失了。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-11-6 18:18:19
6#
本帖最后由 Richard.Ma 于 2023-11-6 18:19 编辑

如果你是把flexgrid(grid)当作excel(sheet)来用的话,后面可能很多功能都不符合要求,不止是目前的需求会有障碍。itemFormatter 事件是在单元格绘制的时候触发的,并不适合用来做单元格显示内容设置之外的事情。否则性能会有问题

grid和sheet有本质区别,

grid是基于行数据(列字段相同),
sheet是基于单元格。所以每个单元格是独立设置的。

根据你的需求,我建议你还是应该使用spreadjs,详细的需求建议你可以留一下联系方式,我们语音沟通一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部