以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  专业报表怎么分两栏显示  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=159149)

--  作者:nxdx112
--  发布时间:2020/12/15 17:20:00
--  专业报表怎么分两栏显示
问题:1专业报表怎么分两栏显示,该加什么代码,帮加一下代码  2 照片为什么显示不出来?怎么处理  谢谢!

Dim doc As New PrintDoc \'定义一个报表
Dim tbl As Table = Tables("准考证")
For i As Integer = tbl.TopRow To tbl.BottomRow
    Dim rw As Row = tbl.Rows(i)
    Dim rt As New prt.RenderTable() \'定义一个表格对象
    Dim rx As New prt.RenderText \'定义一个文本对象
    Dim ra As New prt.RenderArea \'定义一个容器
  ra.SplitHorzBehavior = prt.SplitBehaviorEnum.Never \'禁止水平分割
ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never \'禁止垂直分割

    \'加入标题
    rx.text = "青铜峡市铝业学校学生准考证"
    rx.Style.FontBold = True \'字体加粗
    rx.Style.FontSize = 12 \'大体大小为16磅
    rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中排列
    rx.Style.Spacing.Bottom = 1 \'和下面的对象(表格)距离3毫米
    ra.Children.Add(rx) \'加入到容器中
    \'指定行数?列数?列宽?行高
    rt.Rows.Count = 4 \'设置总行数
    rt.Cols.Count = 5 \'设置总列数
    rt.Height = 30 \'设置表格的高度
    rt.Width = 80 \'宽度为40毫米

    ra.Height = 40 \'设置表格的高度
    ra.Width = 80  \'宽度为40毫米

    rt.Cols(0).Width = 18 \'设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
    rt.Cols(1).Width = 15
    rt.Cols(2).Width = 15
    rt.Cols(3).Width = 10
    \'设置合并单元格
    rt.Cells(0,4).SpanRows = 4 \'第1行第5个单元格向下合并4行(用于显示照片)
    rt.Cells(3,1).SpanCols = 3 \'第5行第2个单元格向右合并3列(用于显示准考证号)
     \'设置表格样式
    rt.CellStyle.Spacing.All = 1 \'单元格内容缩进1毫米
    rt.Style.Spacing.Bottom = 5 \'和下一个资料卡的距离是5毫米
    rt.Style.GridLines.All = New prt.Linedef \'设置网格线
   \'  rt.Style.TextAlignVert = prt.AlignVertEnum.Center \'内容垂直居中
   \'   rt.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Top \'唯独第7行是备注,内容靠上对齐
    \' 下面很简单,指定每一个单元格的内容
    rt.Cells(0,0).Text= "姓名"
    rt.Cells(0,1).Text = rw("姓名")
    rt.Cells(0,2).Text= "性别"
    rt.Cells(0,3).Text = rw("性别")
    rt.Cells(1,0).Text= "年级"
    rt.Cells(1,1).Text = rw("年级")
    rt.Cells(1,2).Text= "班级"
    rt.Cells(1,3).Text = rw("班级")
    rt.Cells(2,0).Text= "考场"
    rt.Cells(2,1).Text = rw("考场")
    rt.Cells(2,2).Text= "座位号"
    rt.Cells(2,3).Text = rw("座位号")
    rt.Cells(3,0).Text= "准考证号"
    rt.Cells(3,1).Text = rw("准考证号")
    rt.Cells(0,4).Image = GetImage(rw("照片"))
    ra.Children.Add(rt) \'加入到容器中
    Doc.Body.ChildRen.Add(ra) \'将容器加入到报表中
Next
Doc.Preview() \'预览报表
图片点击可在新窗口打开查看此主题相关图片如下:360截图20201215171835747.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/12/15 17:22:11编辑过]

--  作者:有点蓝
--  发布时间:2020/12/15 17:32:00
--  
分栏:http://www.foxtable.com/webhelp/topics/1195.htm

图片在项目的images目录里吗

--  作者:nxdx112
--  发布时间:2020/12/15 17:38:00
--  
分栏搞定,但照片依然无法显示?
图片不在项目的images目录里,在Attachments\\准考证\\照片  ,已经加载到照片列,表中照片正常显示,但报表中不显示,该如何处理?
[此贴子已经被作者于2020/12/15 17:46:50编辑过]

--  作者:有点蓝
--  发布时间:2020/12/15 20:25:00
--  
rw("照片")存储的是什么路径?不在项目的images目录里需要使用完整路径

msgbox(projectpath & "Attachments\\准考证\\照片\\" & rw("照片"))


--  作者:nxdx112
--  发布时间:2020/12/16 9:15:00
--  
rt.Cells(0,4).Image = GetImage("D:\\foxtable\\政教管理2020\\Attachments\\准考证\\照片\\ " & rw("照片"))
绝对地址也不行,我想要相对地址,帮忙改一下!
rt.Cells(0,4).Image = GetImage(projectpath & "Attachments\\准考证\\照片\\" & rw("照片"))

--  作者:有点蓝
--  发布时间:2020/12/16 9:16:00
--  
msgbox(projectpath & "Attachments\\准考证\\照片\\" & rw("照片")) ‘弹出的路径是否正确?
--  作者:nxdx112
--  发布时间:2020/12/16 9:33:00
--  
就是上面的相对路径,但图片就是不显示
--  作者:有点蓝
--  发布时间:2020/12/16 9:35:00
--  
msgbox(projectpath & "Attachments\\准考证\\照片\\" & rw("照片")) ‘弹出的路径是否正确?文件路径是否正确?这个路径是否有这个文件?