以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]专业报表加入图片不存在时报错 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=130841) |
-- 作者:天一生水 -- 发布时间:2019/2/3 22:13:00 -- [求助]专业报表加入图片不存在时报错 专业报表加入图片不存在时报错,提示“未将对象引用设置到对象的实例。” 怎样输出一个不含这个图片的空表格? 谢谢! 代码如下: Dim doc As New Printdoc doc.PageSetting.PaperKind = 9 \'纸张类型改为A4 Doc.PageSetting.LeftMargin = 16 \'设置左边距 Doc.PageSetting.RightMargin = 16 \'设置右边距 Doc.PageSetting.TopMargin = 25 \'设置上边距 Doc.PageSetting.BottomMargin = 20 \'设置下边距 Dim tbl As Table = Tables("数据") For i As Integer = tbl.TopRow To tbl.BottomRow Dim r As Row = tbl.Rows(i) Dim rs As New prt.RenderText() \'定义一个文本对象 Dim rt As prt.RenderTable rt = New prt.RenderTable \'加入标题 rs.Text = Tables("系统设置")(0,"我的年级") & r("科目") & "卡片" \'设置文本对象的内容 rs.Style.Font = New Font("宋体", 18 , FontStyle.Bold) \'设置文本对象的字体 rs.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中排列 rs.Style.Spacing.Bottom = 6 \'和下面的对象(表格)距离3毫米 doc.Body.Children.Add(rs) \'加入到报表中 \'指定行数?列数?列宽?行高 rt.Rows.Count = 4 \'设置总行数 rt.Cols.Count = 2 \'设置总列数 \'rt.Height = 234 \'设置表格的高度为80毫米 rt.Rows(0).Height = 18 rt.Rows(1).Height = 96 rt.Rows(2).Height = 96 rt.Rows(3).Height = 28 rt.Cols(0).Width = 9.5 rt.Cols(1).Width = 167 rt.CellStyle.Spacing.All = 1 \'内容距离网格线1毫米 rt.Style.GridLines.All = New Prt.LineDef(0.2, Color.Black) \'设置合并单元格 rt.Cells(0,0).SpanCols = 2 \'第5行第2个单元格向右合并3列 \'指定每一个单元格的内容 rt.Style.TextAlignVert = prt.AlignVertEnum.Center \'内容垂直居中 rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中排列 rt.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.left \'唯独第7行是备注,内容靠上对齐 Dim rm As New prt.RenderImage \'定义一个图片对象 rm.Image = GetImage(ProjectPath & "Attachments\\错题\\" & r("编号") & "TM" &".jpg") \'设置图片 rm.Width = "Parent.Width" \'宽度等于页面宽度 rm.Height = "Auto" \'高度由图片大小自动决定 rt.Cells(1,1).Image = rm.Image rt.Cells(1,1).Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.Center \'水平居中 doc.AutoRotate = False \'禁止自动旋转打印内容 doc.Body.Children.Add(rt) Next doc.Preview |
-- 作者:天一生水 -- 发布时间:2019/2/3 22:27:00 -- 加个判断,OK Dim fd As String = ProjectPath & "Attachments\\错题\\" & r("编号") & "TM" &".jpg" If FileSys.FileExists(fd) = True Then ...... End if
|