找回密码
 立即注册

QQ登录

只需一步,快速开始

信云软件
金牌服务用户   /  发表于:2022-3-10 10:50  /   查看:4916  /  回复:13
6金币
image.png104353331.png image.png541073607.png 在加载文件的时候因为自定义函数会去数据库查询数据,所以加载文件时页面会有几秒的空白页面,这时候我想做个转圈等待的效果,但是 this.fpSpread1.OpenExcel(Path) 这种加载数据的时候好像是异步的。 image.png317713317.png 我这种写法在他数据还没全部加载出来的时候就把转圈等待的窗体给关闭了,OpenExcel方法怎么判断他加载数据结束的那个点

13 个回复

正序浏览
信云软件
金牌服务用户   /  发表于:2022-3-16 10:03:07
13#
链接: https://pan.baidu.com/s/1hEtF4I4I5G2bSFpc23enYA 提取码: smmu 复制这段内容后打开百度网盘手机App,操作更方便哦              我上传到网盘啦,你看下
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-3-15 12:20:04
12#
这个应该是120M吧,可以删掉里面的包或者引用的dll以及bin目录下的内容,

或者你上传到网盘上发链接到论坛也行
回复 使用道具 举报
信云软件
金牌服务用户   /  发表于:2022-3-15 11:55:18
11#
image.png18247984.png image.png158222045.png 就写了这个连接数据库的自定义函数查询,他这个“test”弹窗还是会在数据没完全加载完就弹出来了
回复 使用道具 举报
信云软件
金牌服务用户   /  发表于:2022-3-15 11:45:23
10#
image.png282999266.png image.png596452941.png 我上传失败了,文件没超过20M啊
回复 使用道具 举报
信云软件
金牌服务用户   /  发表于:2022-3-15 11:25:26
9#
咋发送demo给你,我在回复这里没看到有提交压缩吧的地方
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-3-14 18:13:07
8#
可能只能你这边做一个demo来重现问题了,

我这里目前使用了一个自定义 公式TAXVALUE测试,加了几个公式后保存为xlsx后,再加载无法重现问题

  1.     public class TaxValueFunction : GrapeCity.CalcEngine.Function
  2.     {
  3.         public TaxValueFunction() : base("TAXVALUE", 1, 2, FunctionAttributes.SingleCell | FunctionAttributes.Number) { }
  4.         protected override void Evaluate(IArguments arguments, IValue result)
  5.         {
  6.             IEvaluationContext context = arguments.EvaluationContext;
  7.             double num = arguments[0].GetNumber(context);
  8.             Thread.Sleep(2000);
  9.             double taxrate = arguments.Count > 1 ? arguments[1].GetNumber() : 0.15;
  10.             result.SetValue(null, num - (num * taxrate));
  11.         }
  12.     }
复制代码
回复 使用道具 举报
信云软件
金牌服务用户   /  发表于:2022-3-14 16:28:07
7#
this.fpSpread1.OpenExcel(Path);
MessageBox.Show("Test");
我没设置啥,就写了这个测试代码,弹窗先出来的,然后才把函数的值给加载出来,弹窗的代码是写在加载xml文件的后边,但是在OpenExcel的函数值还没加载结束的时候弹窗就出来了.......
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-3-14 10:29:11
6#
抱歉,这边一直未能重现问题,

我在自定义函数中加入了Thread.Sleep(2000);来延迟计算,

保存的xml中有好几个这个公式,但是最终也是会在计算完成后才跳出open方法,我建议你发我一个demo看看是否有做其他的设置导致这个问题,这个问题和数据库查询无关
回复 使用道具 举报
信云软件
金牌服务用户   /  发表于:2022-3-12 09:26:00
5#
咋样了,能否在加载数据的时候处理
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-3-10 18:19:41
4#
不客气,问题比较麻烦,这边可能还需要找找解决办法,预计明天早上给你回复
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部