找回密码
 立即注册

QQ登录

只需一步,快速开始

独恋秋风

注册会员

4

主题

17

帖子

47

积分

注册会员

积分
47
最新发帖
独恋秋风
注册会员   /  发表于:2019-5-13 16:55  /   查看:6337  /  回复:10
本帖最后由 独恋秋风 于 2019-5-13 17:00 编辑

查看demo中设置那么属性为A4,显示值为A4单元格文本,如果我想显示表单列头区域中的单元格“A”的显示文本。需要如何设置name属性 image.png920964355.png

10 个回复

倒序浏览
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-5-14 21:44:32
沙发
您好,可以通过修改chart的series实现,以学习指南的组合图为例,执行以下代码可以实现把折线图的series name改为A1单元格的值:

  1. var spread = GC.Spread.Sheets.findControl("ss");
  2. var sheet = spread.getActiveSheet();
  3. var chart = sheet.charts.all()[0];
  4. // 获取到折线部分的seriesItem
  5. var seriesItem = chart.series().get(2);
  6. seriesItem.name = "A1";
  7. // 把修改后的seriesItem设置回chart即可
  8. chart.series().set(2, seriesItem);
复制代码
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-5-14 21:45:31
板凳
执行结果如图所示:

image.png477990111.png
回复 使用道具 举报
独恋秋风
注册会员   /  发表于:2019-5-15 14:03:45
地板
KevinChen 发表于 2019-5-14 21:45
执行结果如图所示:

emmm,可能是我表达有问题吧,我截图表示一下 image.png636726073.png 我想设置显示值就是表头的“单据编号”
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-5-15 23:29:39
5#
您好,表头的内容无法被范围表达式引用,在Excel中表头也同样无法被引用,

您可以把表头设置为Viewport的第1行并设置冻结,同样可以实现表头的效果,例如:

https://demo.grapecity.com.cn/Sp ... ozenLineAndViewport
回复 使用道具 举报
独恋秋风
注册会员   /  发表于:2019-5-16 13:23:07
6#
KevinChen 发表于 2019-5-15 23:29
您好,表头的内容无法被范围表达式引用,在Excel中表头也同样无法被引用,

您可以把表头设置为Viewport ...

已解决,添加一个隐藏sheet保存表头信息,然后引用隐藏sheet中的cell值
回复 使用道具 举报
独恋秋风
注册会员   /  发表于:2019-5-16 13:27:48
7#
该贴已完结,简单说一下个人的解决方案。
首先获取数据sheet的表头信息,添加到一个隐藏的sheet页中。 image.png865464172.png
然后在添加图表series时从隐藏sheet页中获取 image.png907247924.png

评分

参与人数 1金币 +1000 收起 理由
KevinChen + 1000 感谢分享!这个方案很有价值,相信会造福更.

查看全部评分

回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-5-16 14:56:05
8#
嗯,这种方式是Excel的解决方案。
更简单的直接seriesItem.name = sheet1.getValue(0,i,GC.Spread.Sheets.SheetArea.colHeader)
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-5-16 15:10:19
9#
感谢分享!这个方案很有价值,相信会造福更多小伙伴,顶你!
回复 使用道具 举报
独恋秋风
注册会员   /  发表于:2019-5-21 13:36:28
10#
ClarkPan 发表于 2019-5-16 14:56
嗯,这种方式是Excel的解决方案。
更简单的直接seriesItem.name = sheet1.getValue(0,i,GC.Spread.Sheets. ...

您好, sheet1.getValue(0,i,Spread.Sheets.SheetArea.colHeader) 确实可以获取到列头区域的值,但是这里seriesItem.name 赋值时无法这样赋值。上面回帖实际就是 seriesItem.name="名称" ,这种赋值方式不好用。图表展示是默认名称。 只能通过赋值  seriesItem.name="A1"  时,图表展示的是A1单元格的内容。这里name 赋值,应该是Range类型的字符串,然后解析获取到Range对应单元格内容赋值的。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部