Foxtable(狐表)用户栏目专家坐堂 → [求助]专业报表


  共有3607人关注过本帖树形打印复制链接

主题:[求助]专业报表

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


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
[求助]专业报表  发帖心情 Post By:2015/3/18 14:59:00 [显示全部帖子]

   在专业报表中,定义1个报表rb,并也某单元格为容器:

   ra = rb.cell(r,c).Area

   在容器ra中加入几个文本对象。

   请问如何将加入的文本对象在单元各种垂直居中?

   我试写了几个代码,一是统一用表属性设置不起作用,设置单元格的属性也不起作用

   设置文本对象垂直居中也不起作用。


 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/18 15:09:00 [显示全部帖子]

      我的容器是单元格,容器中有多个文本对象,采用循环对单个文本对象设置了垂直居中,但没起作用

 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/18 16:38:00 [显示全部帖子]

    

    下列代码中,第1列垂直居中,第二列不垂直居中

    

Dim doc As New PrintDoc

Dim rt As New prt.RenderTable

Dim ra As prt.RenderArea

Dim ra1 As prt.RenderArea

Dim rm As prt.RenderImage

Dim rx As prt.RenderText

rt.Style.GridLines.All = New prt.LineDef

rt.CellStyle.Spacing.All = 1 '单元格内容和网格线距离1毫米

rt.Cols.Count = 3 '总列数为3

For i As Integer = 0 To 3

    ra = rt.Cells(i,0).Area '引用单元格的容器

       

    '设置文本对象

    For s As Integer = 0 To 3

        rx = New prt.RenderText '创建一个文本

        rx.Text = "那就叫你"

        rx.Style.TextAlignVert = prt.AlignVertEnum.Center '文本垂直居中

        rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center

        rx.Style.Spacing.Bottom = 1 '距离下边的对象2毫米

        ra.Children.Add(rx) '加入文本到RenderArea中

    Next

 

    ra1 = rt.Cells(i,1).Area '引用单元格的容器

       

    '设置文本对象

        rx = New prt.RenderText '创建一个文本

        rx.Text = "那就叫你ddddddddd"

        rx.Style.TextAlignVert = prt.AlignVertEnum.Center '文本垂直居中

        rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center

        rx.Style.Spacing.Bottom = 1 '距离下边的对象2毫米

        ra1.Children.Add(rx) '加入文本到RenderArea中

  

doc.Body.Children.Add(rt)

Doc.Preview()


 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/18 17:00:00 [显示全部帖子]

     请老师看一下,这个问题如何解决?

 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/18 17:20:00 [显示全部帖子]

        请各位老师指教!

 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/19 9:59:00 [显示全部帖子]

上述代码解决了问题,但是不太明白,不知引用单元格的容器,在定义格式和老师的代码有什么区别,请解释一下

 

ra = rt.Cells(i,0).Area '引用单元格的容器

 

rt.Cells(i,0).RenderObject = rx


 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/19 16:46:00 [显示全部帖子]

用了甜老师修改的代码,还有点问题:第2列每个单元格填入数据时,也有多个文本对象。

当第2列有多个文本对象时,仍不能垂直居中。

 

 

Dim doc As New PrintDoc

Dim rt As New prt.RenderTable

Dim ra As prt.RenderArea

Dim rx As prt.RenderText

rt.Style.GridLines.All = New prt.LineDef

rt.CellStyle.Spacing.All = 1 '单元格内容和网格线距离1毫米

rt.Cols.Count = 3 '总列数为3

For i As Integer = 0 To 3

 

    ra = new prt.RenderArea 

    '设置文本对象

    For s As Integer = 0 To 3

        rx = New prt.RenderText '创建一个文本

        rx.Text = "那就叫你交"

        rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center

        rx.Style.Spacing.Bottom = 1 '距离下边的对象2毫米

        ra.Children.Add(rx) '加入文本到RenderArea中

    Next

    rt.Cells(i,0).RenderObject = ra

   

    ra = new prt.RenderArea

    For t As Integer = 0 To 2

        '设置文本对象

        rt.Cells(i,1).Style.TextAlignVert = prt.AlignVertEnum.Center '文本垂直居中

       

        rx = New prt.RenderText '创建一个文本

        rx.Text = "那就叫你交ddddddddd"

        rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center

        rx.Style.Spacing.Bottom = 1 '距离下边的对象2毫米

        ra.Children.Add(rx) '加入文本到RenderArea中

    Next

    rt.Cells(i,1).RenderObject = ra

   

Next

doc.Body.Children.Add(rt)

Doc.Preview()


 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/20 15:20:00 [显示全部帖子]

    我想实现的效果图如下,请老师能不能提个其他思路,急!

     


图片点击可在新窗口打开查看此主题相关图片如下:图-2.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
xxk02
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:206 积分:1646 威望:0 精华:0 注册:2014/9/26 11:18:00
  发帖心情 Post By:2015/3/20 16:07:00 [显示全部帖子]

   这个思路不错,谢谢!

 回到顶部