Foxtable(狐表)用户栏目专家坐堂 → 专业报表 根据图片信息表中的ID查找文件附件中ID下的所有图片,为什么不能全部显示出来呢?


  共有2799人关注过本帖平板打印复制链接

主题:专业报表 根据图片信息表中的ID查找文件附件中ID下的所有图片,为什么不能全部显示出来呢?

帅哥哟,离线,有人找我吗?
李孝春
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
专业报表 根据图片信息表中的ID查找文件附件中ID下的所有图片,为什么不能全部显示出来呢?  发帖心情 Post By:2021/1/7 9:50:00 [只看该作者]

专业报表  根据图片信息表中的ID查找文件附件中ID下的所有图片,为什么不能全部显示出来呢?

图片点击可在新窗口打开查看此主题相关图片如下:1212.gif
图片点击可在新窗口打开查看
报表预览按钮事件代码:【想修正为根据图片信息表当前行的ID值,查询文件附件表中所有ID相同值得所有图片,然后专业报表连续打印出来】
Dim doc As New PrintDoc '定义一个报表
Dim tbl As Table = Tables("图片信息")
Dim Rows As List(Of DataRow)

For i As Integer = tbl.TopRow To tbl.BottomRow
    output.Show(i)
    Dim rw As Row = tbl.Rows(i)
    output.Show(rw("主题"))
    Dim rm As New prt.RenderImage '定义一个图片对象
    Dim rt00 As New prt.RenderTable() '定义一个表格对象
    Dim ra As New prt.RenderArea '定义一个容器
    
    Dim drs As List(Of DataRow)
    drs = DataTables("文件附件").Select("文件编号= '" & rw("ID") & "'")
    For Each dr As DataRow In drs
        output.Show("1")
        ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never  '禁止容器因为分页而被垂直分割
        If dr IsNot Nothing Then
            rm.Image = dr.SQlLoadImage("附件")
            output.Show("2")
        Else
            rm.Image = getImage("")
            output.Show("3")
        End If
        rm.y = 50 '指定垂直位置
        rm.x = 25 '指定垂直位置
        rm.Width = 160
        rm.Height = 90
        rm.Style.ImageAlign.TileHorz=True
        rm.Style.ImageAlign.TileVert=True
        rm.Style.ImageAlign.StretchHorz = True '禁止图片水平拉伸
        rm.Style.ImageAlign.StretchVert = True '禁止图片水平拉伸
        rm.Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.center '居中显示
        rm.Style.ImageAlign.AlignVert = prt.ImageAlignHorzEnum.center '居中显示
        
    Next
    doc.Body.Children.Add(rm) '将图片对象加入报表
        'ra.Children.Add(rm) '加入到容器中
    
    rt00.x=25
    rt00.y=120
    rt00.Width = 140 '表宽为150毫米
    rt00.Height = 20 '表高为150毫米
    rt00.Rows.Count = 4 '设置行数
    rt00.Cols.Count = 2 '设置列数
    rt00.Cols(0).Width = 10
    rt00.Cols(1).Width = 90
    rt00.Cells(0,0).Text="拍摄对象"
    rt00.Cells(0,0).Style.Font = New Font("宋体", 10, FontStyle.Bold) '设置字体
    rt00.Cells(0,0).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
    rt00.Cells(0,0).Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中
    rt00.Cells(0,0).Style.TextColor = Color.red '字符颜色设为红色
    rt00.Cells(0,1).Text=rw("对象")
    rt00.Cells(0,1).Style.TextColor = Color.red '字符颜色设为红
    rt00.Cells(0,1).Style.Font = New Font("宋体", 10, FontStyle.Bold) '设置字体
    rt00.Cells(0,1).Style.TextAlignHorz = prt.AlignHorzEnum.left '水平居中
    rt00.Cells(0,1).Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中
    
    'doc.Body.Children.Add(rt00) '将表格对象加入到报表中
    ra.Children.Add(rt00) '加入到容器中
    Doc.Body.ChildRen.Add(ra)
Next
doc.Preview() '预览


 回到顶部
总数 13 1 2 下一页