以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]预览专业报表显示速度问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=117248) |
||||
-- 作者:yyzlxc -- 发布时间:2018/4/9 15:41:00 -- [求助]预览专业报表显示速度问题 在项目中运行帮助中打印票签的代码,第一次运行需要一分钟以上才能显示预览图表,而再次运行代码,只需要6秒左右就能显示。有什么办法解决?请各位老师指教,谢谢!! |
||||
-- 作者:有点甜 -- 发布时间:2018/4/9 16:54:00 -- 回复1楼,不应该吧?做个实例发上来测试。 |
||||
-- 作者:yyzlxc -- 发布时间:2018/4/9 18:57:00 -- 实例上传,请老师指教,谢谢!!
|
||||
-- 作者:有点蓝 -- 发布时间:2018/4/9 20:27:00 -- Dim t1 As Date = Date.Now Dim doc As New PrintDoc \'定义一个报表 doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight \'设置排列方式 Dim ra As prt.RenderArea Dim rt As prt.RenderText For i As Integer = 1 To 200 ra = New prt.RenderArea ra.Width = 53 \'宽度53毫米 ra.Height = 24 \'高度24毫米 ra.Style.Spacing.All = 1 ra.Style.Borders.All = New prt.Linedef(0.3, Color.Red) \'设置边框 ra.SplitHorzBehavior = prt.SplitBehaviorEnum.Never \'禁止水平分割 ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never \'禁止垂直分割 rt = New prt.RenderText rt.Text = "姓名:" rt.X = 2 rt.Y = 2 ra.Children.Add(rt) \'添加到容器中 rt = New prt.RenderText rt.Text = "黄财德" rt.X = 15 rt.Y = 2 ra.Children.Add(rt) rt = New prt.RenderText rt.Text = "职务:" rt.X = 2 rt.Y = "Prev.Bottom + 2" \'垂直坐标位于迁移对象之下的2毫米 ra.Children.Add(rt) rt = New prt.RenderText rt.Text = "总经理" rt.X = 15 rt.Y = "Prev.Top" \'垂直坐标和前一对象相同 ra.Children.Add(rt) rt = New prt.RenderText rt.Text = "编号:" rt.X = 2 rt.Y = "Prev.Bottom + 2" ra.Children.Add(rt) rt = New prt.RenderText rt.Text = "44081919710917243" rt.X = 15 rt.Y = "Prev.Top" ra.Children.Add(rt) Doc.Body.ChildRen.Add(ra) \'将容器加入到报表中 Next Doc.Preview() e.Form.Controls("Label1").Text = ("计算结束, 耗时: " & (Date.Now - t1).TotalSeconds & "秒")
|
||||
-- 作者:yyzlxc -- 发布时间:2018/4/9 21:16:00 -- 谢谢甜老师的指教,但是情况依旧,打开项目,第一次运行时间要40多秒,第二次就只要5秒多一点,如何解决?还请指教,谢谢!! |
||||
-- 作者:有点蓝 -- 发布时间:2018/4/9 21:27:00 -- 我测试没有问题。换个电脑试试 |
||||
-- 作者:yyzlxc -- 发布时间:2018/4/9 22:02:00 -- 好的,明天再试,谢谢了!! |