找回密码
 立即注册

QQ登录

只需一步,快速开始

小码农

初级会员

37

主题

133

帖子

388

积分

初级会员

积分
388
小码农
初级会员   /  发表于:2023-4-21 11:21  /   查看:1547  /  回复:3
1金币
请问 移动图表 到另一个页签api是什么,我没有找到
还有 copyTo和moveTo是否能够夸页签,我看api好像只能限制与当前页签




image.png506722106.png

image.png845584411.png

最佳答案

查看完整内容

问题1: 参考下方代码: 问题2: 如上个回复所述, copyTo和moveTo 仅支持在sheet范围内移动的。 对于跨sheet的复制操作,建议用clipboardPaste命令,可以在前后加上suspendPaint/resumePaint,看下性能是否有所优化。 补充:如果是对整个sheet做复制操作,可以试下copySheet命令,API如下: https://demo.grapecity.com.cn/spreadjs/help/docs/features/worksheet/work-with-worksheets#复制工作表

3 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-4-21 11:21:44
来自 4#
问题1:
参考下方代码:
  1. spread.suspendPaint();
  2. var sheet1 = spread.getSheet(0);
  3. var sheet2 = spread.getSheet(1);
  4. // 获取sheet1中的chart
  5. var chart1 = sheet1.charts.all()[0];
  6. // 获取chart的xy坐标
  7. var x = chart1.x();
  8. var y = chart1.y();
  9. // 选中chart
  10. chart1.isSelected(true);
  11. // 剪切sheet1 中的chart
  12. spread.commandManager().execute({cmd: "cutFloatingObjects", sheetName: "Sheet1"});
  13. // 粘贴至sheet2中
  14. spread.commandManager().execute({cmd: "pasteFloatingObjects", sheetName: "Sheet2"});
  15. // 获取chart2中的chart,并调整xy坐标
  16. var chart2 = sheet2.charts.all()[0];
  17. chart2.x(x);
  18. chart2.y(y);
  19. spread.resumePaint()
复制代码

问题2:
如上个回复所述, copyTo和moveTo 仅支持在sheet范围内移动的。
对于跨sheet的复制操作,建议用clipboardPaste命令,可以在前后加上suspendPaint/resumePaint,看下性能是否有所优化。
补充:如果是对整个sheet做复制操作,可以试下copySheet命令,API如下:
https://demo.grapecity.com.cn/spreadjs/help/docs/features/worksheet/work-with-worksheets#复制工作表



回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-4-21 15:06:49
2#
您好,
问题1:
SJS原生并没有移动chart的API,您可以参考下方代码通过剪切粘贴,间接实现:
  1. // 获取sheet1中的chart
  2. var chart = sheet.charts.all()[0];
  3. // 选中chart
  4. chart.isSelected(true);
  5. // 剪切sheet1 中的chart
  6. spread.commandManager().execute({cmd: "cutFloatingObjects", sheetName: "Sheet1"});
  7. // 粘贴至sheet2中
  8. spread.commandManager().execute({cmd: "pasteFloatingObjects", sheetName: "Sheet2"});
复制代码
问题2:

copyTo和moveTo 仅支持在sheet范围内移动。
请问您的需求是什么,请结合实际业务情况详细描述下,这边看下是否有合适的方案。
image.png672255859.png
回复 使用道具 举报
小码农
初级会员   /  发表于:2023-4-23 10:14:46
3#
Lynn.Dou 发表于 2023-4-21 15:06
您好,
问题1:
SJS原生并没有移动chart的API,您可以参考下方代码通过剪切粘贴,间接实现:

你好,第一个剪切图表后,在新的表中位置发生改变,默认复制到左上角,如果获取之前的位置并设置到新页签对应的位置上

第二个有其他解决方案,通过clipboardPaste来粘贴,但是如果数据量很大内存**,页面会崩溃,提交过但是没有解决
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部