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


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

主题:[求助]专业报表段落问题

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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
[求助]专业报表段落问题  发帖心情 Post By:2015/8/4 18:36:00 [只看该作者]

Dim rpar As New prt.RenderParagraph()
rpar.Content.AddText( vblf & "特此告知.",f2)
rpar.Content.AddText( vblf & Format(dr0("受理时间"),"yyyy-MM-dd"),f3)

想实现:特此告知左对齐,受理时间右对齐并空4个字符。


求助老师,谢谢

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/4 19:31:00 [只看该作者]

不能这样做。

 

加入两个 RenderText 来控制。


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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2015/8/4 19:41:00 [只看该作者]

老师,是在一个表格中的一单元格内加入该段落。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/4 19:50:00 [只看该作者]

你可以加入容器。

 

容器里面加入 段落和文本


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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2015/8/5 10:36:00 [只看该作者]

老师,如何在单元格中加入容器?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/5 10:58:00 [只看该作者]

 

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderTable() '定义一个表格对象
doc.Body.Children.Add(rt) '将表格对象加入到报表中
'下面的代码向表格中填入值
For r As Integer = 0 To 5
    For c As Integer = 0 To 5
        Dim ra As New prt.RenderArea
        Dim rx As new prt.RenderText
        rx.Text = r & " " & c
        ra.children.add(rx)
        rt.Cells(r, c).RenderObject = ra '将文本对象放置在单元格中
    Next
Next
doc.Preview() '预览报表


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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2015/8/5 11:44:00 [只看该作者]

老师,麻烦您将1楼的代码写一下,谢谢


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/5 12:15:00 [只看该作者]

思路已经提供,要做,自己看帮助去

 

http://www.foxtable.com/help/topics/1166.htm

 


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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2015/8/5 15:28:00 [只看该作者]

    ra = rt.Cells(rt.Rows.Count-1,1).Area   '引用单元格的容器
    ra.Stacking = prt.StackingRulesEnum.BlockTopToBottom   '排列方式改为从上到下
    rpar = New prt.RenderParagraph()  ''新的段落
    rpar.Content.AddText("特此告知",f3)
    rpar.Style.TextIndent = "10mm"
rpar.Style.TextAlignHorz = prt.AlignHorzEnum.Left  ''左对齐
rpar.Style.TextAlignVert =prt.AlignVertEnum.Bottom
    ra.Children.Add(rpar) '加入段落到RenderArea中

    rs = New prt.RenderText()  ''新的文本
    rs.Text = Format(date.now,"yyyy年M月d日") 
rs.Width = "Auto"
    rs.Style.TextAlignHorz = prt.AlignHorzEnum.Center    ''文本水平对齐
    rs.Style.Padding.Right = 7 ''距右边距      
    ra.Children.Add(rs)
    rt.cells(rt.Rows.Count-1,1).RenderObject = ra

问题:红色代码无法实现该文本整体距右边距7毫米。只是实现了文本内容距文本框7毫米。求解

也就是如何设置对象在容器中的位置?水平靠右,垂直靠下。
[此贴子已经被作者于2015/8/5 15:35:45编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/5 16:00:00 [只看该作者]

参考

 

Dim doc As New PrintDoc '定义一个报表
Dim ra As New prt.RenderArea
ra.Style.BackColor = color.red
ra.Stacking = prt.StackingRulesEnum.InlineLeftToRight
Dim rx As new prt.RenderText
rx.Text = "123456"
rx.width = "parent.width / 2"
rx.Style.TextAlignHorz = prt.AlignHorzEnum.Left
ra.children.add(rx)
rx = new prt.RenderText
rx.width = "parent.width / 2"
rx.Text = "123456"
rx.Style.TextAlignHorz = prt.AlignHorzEnum.right
ra.children.add(rx)
doc.body.Children.Add(ra)
doc.Preview() '预览报表


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